Berekening Running totale en Bewegende Gemiddeldes in Microsoft Access met Total Access Statistics Microsoft Access nie ingeboude funksies om hardloop totale bereken bied. Running Totale is opsommings oor 'n sekere aantal rekords. Byvoorbeeld, 'n 30 dae bewegende gemiddelde wat youd graag bereken vir elke rekord op grond van sy waarde en sy vorige 29 rekords. Gelukkig Totaal Toegang Statistiek voer 'n wye verskeidenheid van die bestuur totale berekeninge oor jou rekords: Doen opsommings vir 'n bewegende stel rekords op somme, gemiddeldes, minimum, maksimum, reeks, mediaan, standaardafwyking te bereken, ens Sit die opsomming waarde in 'n gebied in jou data bron Ontleed die data in jou Toegang tafels en navrae (insluitend gekoppel data) Ondersteun groepering op veldwaardes sodat jy verskeie ontleding kan uitvoer in 'n keer Running Totale bygevoeg om Totaal Toegang Statistiek vir Microsoft Access 2007, en X.7 weergawes vir Access 2003 en vroeër. Running Totale Oorsig Running Totale is berekeninge vir 'n sekere aantal rekords deur jou tafel of navraag. Maklik resultate soos hardloop somme, gemiddeldes, minimum, maksimum, mediaan, ens en plaas dit in die velde in jou data bron. Hierdie berekeninge is beskikbaar: Gemiddeld (gemiddelde) Tel Waarnemings Som Som Squared Minimum Maksimum Range standaardafwyking Variansie koëffisiënt van Variansie standaardfout Mediaan Modus af Telling geometriese gemiddeld Harmoniese Mean wortel-gemiddelde-kwadraat Skeefheid Kurtose standaardfout van skeefheid standaardfout van Kurtose Tot vyf velde in jou tafel kan bygewerk op 'n tyd. Hoe lopende totaal Waardes word bereken Byvoorbeeld, wil jy dalk die gemiddeld van die afgelope 10 rekords te bereken. Dit bewegende gemiddelde is bepaal op grond van die volgorde van jou data, die berekening van die gemiddelde vir die 10 rekords en sit dit in 'n veld wat jy aanwys met rekord 10. Vir rekord 11, is rekord 1 geïgnoreer en die berekening uitgevoer word vir rekords 2 deur 11, ens Soos die ander funksies, kan jy groep velde spesifiseer sodat elke groep het sy eie gang totale te bekom. Hierdie funksie is nie 'n aparte tafel te skep. Die resultate word in die velde wat jy spesifiseer in jou data bron. Running Totale Veld Seleksie Die veld seleksie skerm vir hardloop Totale waarmee jy die velde spesifiseer uit te sorteer op en die velde om die resultate te plaas: Groep Fields laat 'n aparte stel analise vir elke kombinasie van unieke waardes onder die groep velde genereer. Die Sorteer Fields bepaal die volgorde van jou rekords aan die gang waardes te bereken. Spesifiseer ten minste een soort veld. Dit kan die volgende insluit die veld jy die uitvoering van die berekeninge op. Velde word gesorteer in stygende volgorde. Spesifiseer tot vyf Fields te Werk met jou totale te bekom. Maak seker dat die velde is van datatipes dat die data wat jy verwag in hulle om te sit kan hou. Byvoorbeeld, moet hulle dubbelspel wees as jy verwag om waardes te stoor soos gemiddelde (gemiddelde), variansie, ens lopende totaal Options Na die kies van die velde, is die bedryf Totale opsies aangebied: Veld ontleed Spesifiseer die stuk grond van die berekeninge is gebaseer op. Hierdie veld kan 'n stuk grond wat gespesifiseer as 'n soort veld wees. Byvoorbeeld, kan jy die loop gemiddelde gebaseer op verkope gesorteer in stygende volgorde te bereken. Aantal rekords te bereken Totale Oor Spesifiseer die aantal rekords in die bewegende totaal. As jy 0 spesifiseer, word die totale bereken vir elke rekord. As jy 'n spesifieke nommer in te voer, is die berekeninge gebaseer op die aantal rekords. Die eerste rekord gedaal toe die volgende een bygevoeg word, en die berekeninge is gebaseer op hierdie bewegende stel rekords. Aanvanklike Stel Records As jy die aantal rekords om totale oor te bereken spesifiseer, daar is 'n opsie om te bepaal wat gebeur voordat jy dat die getal rekords te bereik. Óf die totale moet oorgeslaan word of bereken op grond van die rekords verwerk. Kies Bereken die gang totale ongeag of die aantal beweeg rekords bereik sien. Kies los skoon en kliek om net hardloop totale wanneer die gespesifiseerde aantal rekords is bereik sonder enige berekeninge vir kleiner aantal rekords. Berekening Tipe Daar is baie verskillende tipes berekening beskikbaar. Spesifiseer die een wat jy wil vir elkeen van die werk velde wat jy gekies het. Running Totale Resultate Die Running Totale resultate word in die werk velde vermeld: Voorbeeld van Running Totale geplaas in die regte vier velde van hierdie Microsoft Access tabel In hierdie voorbeeld is die data gesorteer volgens datum en Orde ID, met die berekening van die verkope gebied. Let op die waardes in die veld RunningCount toenemende van 1 tot 10. Sodra dit 10 bereik, is dit steeds teen 10 want dit is die maksimum aantal rekords in die bewegende totaal. Die RunningTotal veld toon die bedrag van verkope oor die rekords in die bewegende stel rekords. Omdat die opsie om die waardes te bereken vir die aanvanklike stel rekords is gekies (voordat dit 10 rekords bereik), is die waardes vertoon. Anders sou die eerste 9 rekords nul waardes het. Interaktiewe Wizard en VBA Programmatiese Interfaces Totaal Toegang Statistiek kan jy interaktief jou berekeninge te genereer deur middel van sy assistent-koppelvlak om maklik te kies die databron, velde, en ontleding sonder programmering. Nadat jy jou keuses spesifiseer, word dit outomaties gestoor as 'n scenario in jou databasis sodat jy dit weer kan hardloop in die toekoms wanneer jou data veranderinge. A VBA statistieke funksie is ook beskikbaar sodat jy hierdie resultate uit-kode kan genereer. Jy kan enige gered scenario maklik uit te voer deur die roeping van 'n enkele prosedure in die Total Access Statistics VBA biblioteek. Die biblioteek sluit 'n reg vrye runtime lisensie, sodat jy dit kan sluit met jou Access-databasis en versprei dit aan nie-Totaal Toegang Statistiek eienaars. Bel die funksie van 'n knoppies OnClick event of ander proses, en die resultate word gegenereer vir jou. Jy kan selfs verberg die ingeboude gebruikerskoppelvlak sodat jou gebruikers nie eens weet Totaal Toegang Statistiek loop. Hulle sal verbaas wees met jou statistiese ontleding vermoëns Bykomende Besonderhede van Berekenings Beskikbaar in Total Access Statistics Hier is 'n paar bykomende hulpbronne en besonderhede oor 'n paar van die data-analise wat jy kan doen op jou Microsoft Access data met Total Access Statistics: Finansiële kontantvloeiberekeninge Gebruik verdiskonteerde kontantvloei vloei en rentekoerse te Netto huidige waarde (NHW), huidige waarde (PV), Future Value (FV) genereer, Interne Opbrengskoers (IOK), Gewysig Interne Opbrengskoers (MIRR) vir 'n gereelde en datum afhanklik betalings en ontvangste. Persentiel Berekenings Bereken verskillende tipes persentiele: mediaan, kwartiele, kwintiele, octiles, desiele, persentiele, elke X.5 persentiel, en plaas dit in 'n tabel of te verander 'n bestaande veld met die rekords persentiel waarde. Running totale en Bewegende Gemiddeldes Som 'n bewegende stel rekords te bestuur somme te bereken, bewegende gemiddeldes, minimum, maksimum, reeks, mediaan, standaardafwyking, ens Data Normalisering (Data Transponeer) Transponeer nie-genormaliseerde data, sodat jy maklik kan analiseer en in stand te hou Dit. Regressies Eenvoudige, veelvuldige en polinoom regressie met berekening van vergelyking koëffisiënte, ANOVA en residuele tafel kruis tabelle en Chi-Square Gevorderde kruis-tabelle met persentasie van ry, kolom en totale vertoon as rekords of columnsWhen ek 'n soortgelyke probleem gehad, ek het uiteindelik met behulp van tydelike tafels vir 'n verskeidenheid van redes, maar dit het hierdie 'n baie makliker wat ek gedoen het lyk baie soortgelyk aan wat jy doen, so ver as die skedule gaan. Maak die skedule iets soos ID identiteit, Begindatum, Einddatum, waarde. Wanneer jy kies, doen 'n subselect avg van die vorige 20 gebaseer op die identiteit ID. Slegs dit doen as jy jouself reeds met behulp van tydelike tafels vir ander redes al (ek getref dieselfde rye oor en oor vir verskillende statistieke, dus is dit nuttig om die klein dataset het was). In my ervaring, contact form as van 5.5.x geneig om nie te indekse gebruik op afhanklike kies, of 'n subquery of aan te sluit. Dit kan 'n baie groot impak op prestasie waar die afhanklike kies kriteria verander op elke ry het. Bewegende gemiddelde is 'n voorbeeld van 'n navraag wat in hierdie kategorie val. Uitvoering tyd kan verhoog met die vierkant van die rye. Om dit te voorkom, verkies 'n databasis-enjin wat geïndekseer look-ups kan voer oor afhanklike kies. Ek vind postgres werk effektief vir hierdie probleem. beantwoord 2 Julie 14 aan 08:01 Jou Antwoord 2016 stapel Exchange, IncHow 'n SQL Bereken bewegende gemiddelde sonder 'n wyser Update: As jy besig is met die nuutste weergawes van SQL Server, kan jy die windows funksies gebruik om dieselfde ding te bewerkstellig. Ek gepos word om die updated kode aan die einde van die post. Om hierdie video, ek nog graag die denkproses van anker om 'n datum. Video: 3 daagse bewegende gemiddelde in SQL 'n doeltreffende manier om 'n bewegende gemiddelde in SQL te bereken met behulp van 'n paar truuks op datum ankers stel. Daar is debatte oor die beste manier om 'n SQL bewegende gemiddelde in SQL Server doen. Sommige mense dink daar is tye wanneer 'n wyser is mees doeltreffende. Ander dink dat jy dit alles kan doen in 'n stel wat gebaseer is weg sonder die wyser. Die ander dag het ek gaan 'n bewegende gemiddelde te bereken en my eerste gedagte was om 'n wyser gebruik. Ek het 'n paar vinnige navorsing en het gevind dat hierdie forum vraag: Moving Gemiddelde in TSQL Daar is 'n pos wat 'n subquery met 'n anker datum te help vind die 1 en 2 dag geneutraliseer toon. Hier is die skrif wat jy kan gebruik om die 3 dag SQL Gemiddeld finale uitslag Moving toets. Hier is die finale navraag. Hier is die vraag wat jy sou gebruik met SQL Server 2012. Deel hierdie: Moving gemiddelde Microsoft toegang Laaste opgedateer: 2012/05/10 Ek wil 'n verskeidenheid van bewegende gemiddeldes in Microsoft Access waar ek 'n tafel met die kolomme Datum bereken .. transaksiedatum in die Microsoft voorbeeld hieronder Produk descriptuon prys verkoop. Valuta in die Microsoft voorbeeld hieronder Microsoft gee 'n voorbeeld van 'n module op die onderstaande webadres, maar dit werk net 'n paar van die tyd en het ook probleme wanneer ek begin 'n nuwe month..all waarvan suggereer ek het 'n probleem met my datums is ingestel op Datum / Tyd Fomat Kort Datum Opsie Vergelyk databasis Function MovAvg (currencyType, Begindatum, tydperk as Integer) Dim eerste Soos DAO. Recordset Dim SQL Soos String Dim ma as betaalmiddel Dim N Soos Integer SQL quotSelect van Tabel1 quot SQL SQL amp quotwhere currencyType quot amp currencyType amp quotquot SQL SQL amp quot en transactiondate Dit quot amp Begindatum amp quotquot SQL SQL amp quot bevel deur transactiondatequot Stel eerste CurrentDb. OpenRecordset (vk l) rst. MoveLast Vir N 0 Om tydperk - 1 As rst. BOF Dan MovAvg 0 Exit funksie Else ma ma rst. Fields (quotratequot) End As rst. MovePrevious Volgende N rst. Close MovAvg ma / tydperk ek nie vaardig in SQL maar kan deel van wat geskryf is verstaan en te skep deur sny en plak die voorgestelde oplossing en gebruik dit maar soos ek gesê het dit werk slegs 'n deel van die tyd wat in kort tydperk bewegende gemiddeldes (sê 5 dae) om die probleem te staak as die datum val in die rigting van die 12de van 'n maand die vorige 5 dae bewegende gemiddelde begin om in te kom fout wat daarop dui dat as jy beweeg van dubbelsyfer om enkele syfer dateer iets die geval is werk reg Ek probleem het ook as my oorskry sowat 23 dae as ek altyd 'n nul op die 1ste van die maand en soms die 2de Enige hulp in die begrip van hoekom ek hierdie probleme opreg waardeer asseblief herhaal wat jy probeer om te doen, en werk op 'n numeriese voorbeeld. Plaas van 'n monster MDB lêer sal die beste van alles wees. In elk geval, jy waarskynlik nie nodig VBA 'n rollende gemiddelde kry 'n normale SQL-stelling sal waarskynlik die werk te doen, en nog baie meer vinnig op daardie. Hier is twee vinnige voorbeelde, met behulp van die aangehegde lêer: 5 dag rollende gemiddelde, per produk, waarvoor al dae kry 'n rollende gemiddelde waarde: 5 dag rollende gemiddelde, per produk, vir rollende gemiddelde is van nul indien daar minder as 5 dae: N tydperk bewegende gemiddelde in navrae Im probeer om uit te vind of sy moontlik om te bereken bewegende gemiddelde in navraag. Soek deur vorige poste, al wat ek kon kry is: Daar is daar 'n goeie idees. Klaarblyklik het hierdie werk goed, maar wat ek eintlik nodig het, is anders - bewegende gemiddelde gebruik van sekere tydperk. Laat ek probeer om te verduidelik. Die tabel is 'n baie eenvoudige een, bevat een numeriese veld en een motor aantal veld, gesorteer volgens motor nommer. Ek nodig het om 'n bewegende gemiddelde van die laaste N tydperke, byvoorbeeld N5 genereer. Bewegende gemiddelde sou 'n gemiddeld van quotPricequot waardes vir die 5 rekords onmiddellik voorafgaande huidige rekord wees. AutoNum Prys MovingAvg 1 100,00 100,00 2 120,00 110,00 3 110,00 110,00 4 105,00 108,75 5 95,00 106,00 (avg van 1-5) 6 70.00 100.00 (avg van 2-6) 7 80.00 92.00 (avg van 3-7) 8 85.00 87,00 (avg van 4-8) 9 87,00 83,40 ens 10 70,00 78,40 Ek weet, as 'n laaste uitweg Ek kan hierdie taak uit te voer met behulp van VB-kode, die ontleding van al die data en die opwekking van 'n ander tafel, maar met 'n groot datastelle dit kan draai na 'n kopseer wees . Is daar enige manier om dit uit te voer in navraag Probeer hierdie twee vrae (te vervang met die korrekte tabel naam in die eerste navraag): qryRankRecords: - Kies AutoNum, Prys, (Kies telling () uit TableName waar AutoNumlta. AutoNum) AS posisie UIT TableName As 'n qryMovingAvg: - Kies AutoNum, prys, (Kies som (prys) van qryRankRecords waar Rank tussen b. Rank en b. Rank-4) / IIF (Rankgt5,5, posisie) AS MovingAvg uIT qryRankRecords AS b run die tweede navraag . (Let wel. Rang in die eerste navraag gebeur met die dieselfde as die AutoNum wees in jou data. Dit word egter gebruik om te verseker dat die tweede navraag werk selfs as sommige rekords verwyder uit die tabel.) Oorspronklik gepos deur Jon K Probeer hierdie twee navrae (te vervang met die korrekte tabel naam in die eerste navraag): qryRankRecords: - qryMovingAvg: - Begin die tweede navraag. (Let wel. Rang in die eerste navraag gebeur met die dieselfde as die AutoNum in jou data wees. Maar dit is wat gebruik word om te verseker dat die tweede navraag werk selfs as sommige rekords verwyder uit die tabel.) Dankie, wat werk. Theres net een probleem - op 'n groter databasis ( 'n paar duisend rekords) wat dit neem vir ewig om die tweede navraag afwerking te kry. Enige idees hoe dit aangespreek kan word new As gevolg van die aantal berekeninge wat betrokke is, die twee navrae is goed net op 'n relatief klein tafeltjie. Byvoorbeeld, as daar 100 rekords in die tabel, qryRankRecords alleen moet die rekords 10010010.000 keer tel om by die geledere. Vir 'n tafel met meer as 100 of 150 rekords, sal jy vind dat jy dit baie vinniger in Excel kan doen. Om by die geledere in Excel kom, kan jy gebruik blink vul funksie met weerlig spoed, en jy kan die MovingAvg kry in duisende selle deur die kies van die selle, tik 'n formule en druk CtrlEnter. Edit: Die laaste deel van die sin in die eerste paragraaf moes gewees het: quot. om die tafel tel 100 keer om te kom op die Ranks. quot Access 2003, WinXP Geredigeer deur Jon K 11-03-2002 by 13:44. Oorspronklik gepos deur Jon K As gevolg van die aantal berekeninge wat betrokke is, die twee navrae is goed net op 'n relatief klein tafeltjie. Byvoorbeeld, as daar 100 rekords in die tabel, qryRankRecords alleen moet die rekords 10010010.000 keer tel om by die geledere. Vir 'n tafel met meer as 100 of 150 rekords, sal jy vind dat jy dit baie vinniger in Excel kan doen. Om by die geledere in Excel kom, kan jy gebruik blink vul funksie met weerlig spoed, en jy kan die MovingAvg kry in duisende selle deur die kies van die selle, tik 'n formule en druk CtrlEnter. Julle reg, Im beter daaraan toe al besig met VB. Nie seker wat ek nodig het, selfs Excel - sal probeer MS Access VB-kode eerste. Dankie in elk geval.
No comments:
Post a Comment