Syntaks:
Vi kan beregne det glidende gennemsnit på forskellige måder, som er som følger:
Metode 1:
NumPy. cumsum ( )Det returnerer summen af elementer i det givne array. Vi kan beregne det glidende gennemsnit ved at dividere outputtet af cumsum() med størrelsen af arrayet.
Metode 2:
NumPy. og . gennemsnit ( )Den har følgende parametre.
a: data i matrixform, der skal beregnes som gennemsnit.
akse: dens datatype er int og det er en valgfri parameter.
vægt: det er også et array og valgfri parameter. Den kan have samme form som en 1D-form. I tilfælde af en dimensionel skal den have en længde på samme længde som 'en' matrix.
Bemærk, at der tilsyneladende ikke er nogen standardfunktion i NumPy til at beregne det glidende gennemsnit, så det kan gøres med nogle andre metoder.
Metode 3:
En anden metode, der kan bruges til at beregne det glidende gennemsnit, er:
for eksempel. konvolvere ( -en , i , mode = 'fuld' )I denne syntaks er a den første inputdimensionelle og v den anden inputdimensionelle værdi. Mode er den valgfri værdi, den kan være fuld, samme og gyldig.
Eksempel #01:
Lad os nu give et eksempel for at forklare mere om det glidende gennemsnit i Numpy. I dette eksempel vil vi tage det glidende gennemsnit ud af et array med konvolverfunktionen af NumPy. Så vi tager et array 'a' med 1,2,3,4,5 som dets elementer. Nu vil vi kalde np.convolve-funktionen og gemme dens output i vores 'b'-variabel. Derefter udskriver vi værdien af vores variabel 'b'. Denne funktion vil beregne den bevægelige sum af vores input-array. Vi udskriver outputtet for at se, om vores output er korrekt eller ej.
Derefter konverterer vi vores output til det glidende gennemsnit ved hjælp af den samme konvolveringsmetode. For at beregne det glidende gennemsnit skal vi bare dividere den glidende sum med antallet af prøver. Men hovedproblemet her er, at da dette er et glidende gennemsnit, bliver antallet af prøver ved med at ændre sig afhængigt af det sted, vi er på. Så for at løse dette problem vil vi simpelthen oprette en liste over nævnerne, og vi skal omdanne dette til et gennemsnit.
Til det formål har vi initialiseret en anden variabel 'denom' for nævneren. Det er nemt for listeforståelse ved hjælp af rækkeviddetricket. Vores array har fem forskellige elementer, så antallet af prøver på hvert sted vil gå fra én til fem og derefter ned fra fem til én. Så vi vil blot tilføje to lister sammen, og vi gemmer dem i vores 'denom' parameter. Nu vil vi udskrive denne variabel for at kontrollere, om systemet har givet os de sande nævnere eller ej. Derefter deler vi vores bevægelige sum med nævnerne og udskriver det ved at gemme outputtet i 'c'-variablen. Lad os udføre vores kode for at kontrollere resultaterne.
importere nusset som for eksempel.-en = [ 1 , to , 3 , 4 , 5 ]
b = for eksempel. konvolvere ( -en , for eksempel. dem_som ( -en ) )
Print ( 'Bevægelsessum' , b )
navn = liste ( rækkevidde ( 1 , 5 ) ) + liste ( rækkevidde ( 5 , 0 , - 1 ) )
Print ( 'nævner' , navn )
c = for eksempel. konvolvere ( -en , for eksempel. dem_som ( -en ) ) / navn
Print ( 'Glidende gennemsnit' , c )
Efter en vellykket eksekvering af vores kode får vi følgende output. I første linje har vi udskrevet 'Moving Sum'. Vi kan se, at vi har '1' i starten og '5' i slutningen af arrayet, ligesom vi havde i vores originale array. Resten af tallene er summen af forskellige elementer i vores array.
For eksempel kommer seks på det tredje indeks af arrayet fra at tilføje 1,2 og 3 fra vores input-array. Ti på det fjerde indeks kommer fra 1,2,3 og 4. Femten kommer fra at summere alle tallene sammen, og så videre. Nu, i anden linje af vores output, har vi udskrevet nævnerne for vores array.
Fra vores output kan vi se, at alle nævnerne er nøjagtige, hvilket betyder, at vi kan dividere dem med vores bevægelige summatrix. Gå nu til den sidste linje i outputtet. I den sidste linje kan vi se, at det første element i vores Moving average Array er 1. Gennemsnittet af 1 er 1, så vores første element er korrekt. Gennemsnittet på 1+2/2 vil være 1,5. Vi kan se, at det andet element i vores output-array er 1,5, så det andet gennemsnit er også korrekt. Gennemsnittet på 1,2,3 vil være 6/3=2. Det gør også vores output korrekt. Så ud fra outputtet kan vi sige, at vi med succes har beregnet det glidende gennemsnit af et array.
Konklusion
I denne guide lærte vi om glidende gennemsnit: hvad glidende gennemsnit er, hvad er dets anvendelser, og hvordan man beregner det glidende gennemsnit. Vi studerede det i detaljer fra både matematiske og programmeringsmæssige synspunkter. I NumPy er der ingen specifik funktion eller proces til at beregne det glidende gennemsnit. Men der er forskellige andre funktioner, ved hjælp af hvilke vi kan beregne det glidende gennemsnit. Vi lavede et eksempel for at beregne det glidende gennemsnit og beskrev hvert trin i vores eksempel. Glidende gennemsnit er en nyttig tilgang til at forudsige fremtidige resultater ved hjælp af eksisterende data.