Numpy glidende gjennomsnitt

Numpy Glidende Gjennomsnitt



Før du starter emnet vårt, la oss forstå hva det bevegelige gjennomsnittet er. I statistikk er et glidende gjennomsnitt en teknikk for å beregne og analysere datapunkter. Den beregner datapunkter ved å lage en serie av et gjennomsnitt av forskjellige delsett fra et fullstendig datasett. Så et glidende gjennomsnitt er en måling som fanger opp den typiske endringen i en informasjonsserie over tid. Flytting er en av de mest fleksible og mest brukte tekniske analyseindikatorene. Siden det er så enkelt å bruke, bruker profesjonelle investorer det som et middel for et visst sett med data i statistikk. Vi kan også beregne et glidende gjennomsnitt i en kortere periode ved å bruke det på daglige eller minuttdata. For eksempel: Når vi bestemmer et 10-dagers glidende gjennomsnitt, vil vi i vårt tilfelle bare oppsummere sluttkursene fra en av de ti foregående dager og del resultatet på ti. Neste dag vil vi også beregne prisen de siste ti dagene, noe som betyr at vi ikke beregner prisen for den første dagen. Den blir heller erstattet av vår pris i går. Dataene endres på denne måten med hver bevegende dag, det er kjent som det glidende gjennomsnittet av denne grunn. Hensikten med det glidende gjennomsnittet er å bestemme starten på en trend, deretter følge fremdriften og også rapportere reverseringen i tilfelle den inntreffer. Formelen for å beregne glidende gjennomsnitt er Ft = (Dt1+Dt2+Dt3…+Dtn)/n. Der Dt er etterspørsel i periode t og Ft er prognose i tid t.

Syntaks:

Vi kan beregne det glidende gjennomsnittet på forskjellige måter som er som følger:

Metode 1:

NumPy. cumsum ( )

Den returnerer summen av elementene i den gitte matrisen. Vi kan beregne det glidende gjennomsnittet ved å dele utgangen av cumsum() med størrelsen på matrisen.







Metode 2:

NumPy. og . gjennomsnitt ( )

Den har følgende parametere.



a: data i matriseform som skal gjennomsnittliggjøres.



akse: dens datatype er int og det er en valgfri parameter.





vekt: det er også en matrise og valgfri parameter. Den kan ha samme form som en 1D-form. Når det gjelder endimensjonal, må den ha samme lengde som 'en' matrise.

Merk at det ikke ser ut til å være noen standardfunksjon i NumPy for å beregne det glidende gjennomsnittet, slik at det kan gjøres med noen andre metoder.



Metode 3:

En annen metode som kan brukes til å beregne det glidende gjennomsnittet er:

f.eks. konvolvere ( en , i , modus = 'full' )

I denne syntaksen er a den første inngangsdimensjonale og v er den andre inngangsdimensjonale verdien. Modus er den valgfrie verdien, den kan være full, samme og gyldig.

Eksempel # 01:

Nå, for å forklare mer om det glidende gjennomsnittet i Numpy, la oss gi et eksempel. I dette eksemplet vil vi ta ut det glidende gjennomsnittet av en matrise med konvolverfunksjonen til NumPy. Så vi tar en matrise 'a' med 1,2,3,4,5 som elementer. Nå vil vi kalle np.convolve-funksjonen og lagre dens utdata i vår 'b'-variabel. Etter det vil vi skrive ut verdien av variabelen vår 'b'. Denne funksjonen vil beregne den bevegelige summen av vår input-array. Vi vil skrive ut utdataene for å se om utdataene våre er riktige eller ikke.

Etter det vil vi konvertere produksjonen vår til det glidende gjennomsnittet ved å bruke samme konvolveringsmetode. For å beregne det glidende gjennomsnittet, må vi bare dele den bevegelige summen på antall prøver. Men hovedproblemet her er at siden dette er et glidende gjennomsnitt, fortsetter antallet prøver å endre seg avhengig av stedet vi er på. Så for å løse det problemet, vil vi ganske enkelt lage en liste over nevnerne, og vi må gjøre dette til et gjennomsnitt.

For det formålet har vi initialisert en annen variabel 'denom' for nevneren. Det er enkelt for listeforståelse ved å bruke rekkevidde-trikset. Arrayet vårt har fem forskjellige elementer, så antallet prøver på hvert sted vil gå fra én til fem og deretter ned fra fem til én. Så vi vil ganske enkelt legge til to lister sammen, og vi vil lagre dem i vår 'denom' -parameter. Nå vil vi skrive ut denne variabelen for å sjekke om systemet har gitt oss de sanne nevnerne eller ikke. Etter det vil vi dele vår bevegelige sum med nevnerne og skrive den ut ved å lagre utdata i 'c'-variabelen. La oss kjøre koden vår for å sjekke resultatene.

import nusset som f.eks.

en = [ 1 , to , 3 , 4 , 5 ]

b = f.eks. konvolvere ( en , f.eks. de_liker ( en ) )

skrive ut ( 'Flyttesum' , b )

Navn = liste ( område ( 1 , 5 ) ) + liste ( område ( 5 , 0 , - 1 ) )

skrive ut ( 'Nevnere' , Navn )

c = f.eks. konvolvere ( en , f.eks. de_liker ( en ) ) / Navn

skrive ut ( 'Glidende gjennomsnitt ' , c )

Etter vellykket utførelse av koden vår, vil vi få følgende utgang. I den første linjen har vi skrevet ut 'Moving Sum'. Vi kan se at vi har '1' i starten og '5' på slutten av matrisen, akkurat som vi hadde i vår opprinnelige matrise. Resten av tallene er summene av forskjellige elementer i matrisen vår.

For eksempel kommer seks på den tredje indeksen til matrisen fra å legge til 1,2 og 3 fra vår input-array. Ti på den fjerde indeksen kommer fra 1,2,3 og 4. Femten kommer fra å summere alle tallene sammen, og så videre. Nå, i den andre linjen i produksjonen vår, har vi skrevet ut nevnerne til matrisen vår.

Fra produksjonen vår kan vi se at alle nevnerne er nøyaktige, noe som betyr at vi kan dele dem med vår bevegelige summatrise. Gå nå til den siste linjen i utgangen. På den siste linjen kan vi se at det første elementet i vår Moving average Array er 1. Gjennomsnittet av 1 er 1, så vårt første element er riktig. Gjennomsnittet på 1+2/2 vil være 1,5. Vi kan se at det andre elementet i utmatrisen vår er 1,5, så det andre gjennomsnittet er også riktig. Gjennomsnittet på 1,2,3 vil være 6/3=2. Det gjør også utgangen vår korrekt. Så fra utgangen kan vi si at vi har vellykket beregnet det bevegelige gjennomsnittet av en matrise.

Konklusjon

I denne veiledningen lærte vi om glidende gjennomsnitt: hva glidende gjennomsnitt er, hva er dets bruksområder og hvordan man beregner det glidende gjennomsnittet. Vi studerte det i detalj fra både matematiske og programmeringsmessige synspunkter. I NumPy er det ingen spesifikk funksjon eller prosess for å beregne det glidende gjennomsnittet. Men det er forskjellige andre funksjoner ved hjelp av hvilke vi kan beregne det glidende gjennomsnittet. Vi gjorde et eksempel for å beregne det glidende gjennomsnittet og beskrev hvert trinn i eksemplet vårt. Glidende gjennomsnitt er en nyttig tilnærming til å forutsi fremtidige resultater ved hjelp av eksisterende data.