Numpy mozgóátlag

Numpy Mozgoatlag



Mielőtt elkezdené témánkat, értsük meg, mi a mozgóátlag. A statisztikában a mozgóátlag az adatpontok kiszámításának és elemzésének módszere. Az adatpontokat úgy számítja ki, hogy egy teljes adatkészletből egy sorozatot készít különböző részhalmazok átlagából. Tehát a mozgóátlag egy olyan mérés, amely megragadja az információsorozat tipikus változását az idő múlásával. A költözés az egyik legrugalmasabb és leggyakrabban használt technikai elemzési mutató. Mivel nagyon egyszerű a használata, a hivatásos befektetők a statisztikák egy bizonyos adathalmazának eszközeként alkalmazzák. A mozgóátlagot rövidebb periódusban is kiszámíthatjuk, ha napi vagy percadatokon használjuk. Például: 10 napos mozgóátlag meghatározásakor esetünkben csak az előző tíz záróárait összegezzük. nap, és az eredményt elosztjuk tízzel. A következő napon az utolsó tíz nap árat is kiszámoljuk, ami azt jelenti, hogy nem az első nap árát számoljuk. Inkább a tegnapi árunk váltja fel. Az adatok minden mozgónappal így változnak, ezért mozgóátlagnak is nevezik. A mozgóátlag célja, hogy meghatározza egy trend kezdetét, majd kövesse annak előrehaladását, és jelentse a megfordulását is, ha bekövetkezne. A mozgóátlag kiszámításának képlete: Ft = (Dt1+Dt2+Dt3…+Dtn)/n. Ahol Dt a kereslet a t időszakban, és az Ft a t időbeli előrejelzés.

Szintaxis:

A mozgóátlagot többféleképpen számíthatjuk ki, amelyek a következők:

1. módszer:

NumPy. cumsum ( )

Az adott tömb elemeinek összegét adja vissza. A mozgóátlagot úgy számíthatjuk ki, hogy a cumsum() kimenetét elosztjuk a tömb méretével.







2. módszer:

NumPy. és . átlagos ( )

A következő paraméterekkel rendelkezik.



a: tömb formájú adat, amelyet átlagolni kell.



tengely: adattípusa int és opcionális paraméter.





súly: ez is egy tömb és opcionális paraméter. Ugyanolyan alakú lehet, mint egy 1-D alakzat. Egydimenziós tömbnél egyenlő hosszúságúnak kell lennie az „a” tömbével.

Vegye figyelembe, hogy úgy tűnik, hogy a NumPy-ban nincs szabványos függvény a mozgóátlag kiszámításához, így ez más módszerekkel is elvégezhető.



3. módszer:

A mozgóátlag kiszámítására használható másik módszer:

például. összecsavar ( a , ban ben , mód = 'teljes' )

Ebben a szintaxisban a az első bemeneti dimenzió, a v pedig a második bemeneti dimenzióérték. A Mode az opcionális érték, lehet teljes, azonos és érvényes.

01. példa:

Most, hogy jobban elmagyarázzuk a Numpy mozgóátlagát, mondjunk egy példát. Ebben a példában kivesszük egy tömb mozgóátlagát a NumPy convolve függvényével. Tehát egy „a” tömböt veszünk, amelynek elemei 1,2,3,4,5. Most meghívjuk az np.convolve függvényt, és a kimenetét a „b” változónkban tároljuk. Ezt követően kiírjuk a „b” változónk értékét. Ez a függvény kiszámítja a bemeneti tömbünk mozgó összegét. Kinyomtatjuk a kimenetet, hogy megnézzük, helyes-e a kimenetünk vagy sem.

Ezt követően a kimenetünket mozgóátlagra konvertáljuk ugyanazzal a konvolválási módszerrel. A mozgóátlag kiszámításához csak el kell osztanunk a mozgó összeget a minták számával. De a fő probléma itt az, hogy mivel ez egy mozgóátlag, a minták száma folyamatosan változik attól függően, hogy hol vagyunk. Tehát a probléma megoldásához egyszerűen létrehozunk egy listát a nevezőkről, és ezt átlagba kell alakítanunk.

Ebből a célból inicializáltunk egy másik „denom” változót a nevező számára. A tartomány trükk használatával egyszerű a lista megértése. Tömbünk öt különböző elemből áll, így az egyes helyeken lévő minták száma egyről ötre, majd ötről egyre csökken. Tehát egyszerűen összeadunk két listát, és eltároljuk őket a „denom” paraméterünkben. Most kinyomtatjuk ezt a változót, hogy ellenőrizzük, hogy a rendszer megadta-e a valódi nevezőket vagy sem. Ezt követően mozgó összegünket elosztjuk a nevezőkkel, és kinyomtatjuk úgy, hogy a kimenetet a „c” változóban tároljuk. Az eredmények ellenőrzéséhez futtassuk le a kódunkat.

import zsibbadt mint például.

a = [ 1 , két , 3 , 4 , 5 ]

b = például. összecsavar ( a , például. onees_like ( a ) )

nyomtatás ( 'Mozgó összeg' , b )

név = lista ( hatótávolság ( 1 , 5 ) ) + lista ( hatótávolság ( 5 , 0 , - 1 ) )

nyomtatás ( 'Nevezők' , név )

c = például. összecsavar ( a , például. onees_like ( a ) ) / név

nyomtatás ( 'Mozgóátlag ' , c )

Kódunk sikeres végrehajtása után a következő kimenetet kapjuk. Az első sorban a „Mozgó összeget” nyomtattuk. Láthatjuk, hogy a tömb elején „1”, a végén pedig „5” van, ugyanúgy, mint az eredeti tömbünkben. A többi szám a tömbünk különböző elemeinek összege.

Például a tömb harmadik indexén lévő hat az 1, 2 és 3 bemeneti tömbünkből való összeadásából származik. A negyedik index tíz értéke 1, 2, 3 és 4-ből származik. A tizenöt az összes szám összegzéséből származik, és így tovább. Most a kimenetünk második sorában kinyomtattuk tömbünk nevezőit.

Kimenetünkből láthatjuk, hogy az összes nevező pontos, ami azt jelenti, hogy a mozgó összegű tömbünkkel oszthatjuk őket. Most lépjen a kimenet utolsó sorára. Az utolsó sorban láthatjuk, hogy a mozgóátlagos tömbünk első eleme 1. Az 1 átlaga 1, tehát az első elemünk helyes. Az 1+2/2 átlaga 1,5 lesz. Láthatjuk, hogy a kimeneti tömbünk második eleme 1,5, tehát a második átlag is helyes. Az 1,2,3 átlaga 6/3=2 lesz. Ez is helyessé teszi a kimenetünket. A kimenetből tehát azt mondhatjuk, hogy sikeresen kiszámítottuk egy tömb mozgóátlagát.

Következtetés

Ebben az útmutatóban megismerkedtünk a mozgóátlagokkal: mi az a mozgóátlag, mi a felhasználása, és hogyan számítható ki a mozgóátlag. Részletesen tanulmányoztuk mind matematikai, mind programozási szempontból. A NumPy-ban nincs konkrét függvény vagy folyamat a mozgóátlag kiszámítására. De vannak más egyéb függvények is, amelyek segítségével a mozgóátlagot kiszámíthatjuk. Példát készítettünk a mozgóátlag kiszámítására, és leírtuk a példánk minden lépését. A mozgóátlagok hasznos megközelítést jelentenek a jövőbeli eredmények előrejelzésére a meglévő adatok segítségével.