Numpy kĺzavý priemer

Numpy Klzavy Priemer



Skôr ako začneme s témou, pochopme, čo je kĺzavý priemer. V štatistike je kĺzavý priemer technika na výpočet a analýzu údajových bodov. Vypočítava údajové body vytvorením série priemeru rôznych podmnožín z úplného súboru údajov. Pohyblivý priemer je teda meranie, ktoré zachytáva typickú zmenu v informačnom rade v priebehu času. Pohyb je jedným z najflexibilnejších a často používaných ukazovateľov technickej analýzy. Keďže sa používa tak jednoducho, profesionálni investori ho využívajú ako prostriedok určitého súboru údajov v štatistike. Môžeme tiež vypočítať kĺzavý priemer v kratšom období tak, že ho použijeme na denných alebo minútových údajoch. Napríklad: Pri určovaní 10-dňového kĺzavého priemeru v našom prípade len zhrnieme záverečné ceny jednej z predchádzajúcich desiatich dní a výsledok vydeľte desiatimi. Na ďalší deň Vám vypočítame aj cenu za posledných desať dní, čiže nebudeme počítať cenu prvého dňa. Skôr ju nahradí naša včerajšia cena. Údaje sa týmto spôsobom menia s každým pohyblivým dňom, z tohto dôvodu sa nazývajú kĺzavý priemer. Účelom kĺzavého priemeru je určiť začiatok trendu, potom sledovať jeho priebeh a tiež hlásiť jeho zvrátenie v prípade, že k nemu dôjde. Vzorec na výpočet kĺzavého priemeru je Ft = (Dt1+Dt2+Dt3…+Dtn)/n. kde Dt je dopyt v období t a Ft je prognóza v čase t.

Syntax:

Kĺzavý priemer môžeme vypočítať rôznymi spôsobmi, ktoré sú nasledovné:

Metóda 1:

NumPy. cumsum ( )

Vráti súčet prvkov v danom poli. Kĺzavý priemer môžeme vypočítať vydelením výstupu cumsum() veľkosťou poľa.







Metóda 2:

NumPy. a . priemer ( )

Má nasledujúce parametre.



a: údaje vo forme poľa, ktoré sa majú spriemerovať.



axis: jej dátový typ je int a je to voliteľný parameter.





hmotnosť: je to tiež pole a voliteľný parameter. Môže mať rovnaký tvar ako 1-D tvar. V prípade jedného rozmeru musí mať rovnakú dĺžku ako pole „a“.

Všimnite si, že sa zdá, že v NumPy neexistuje žiadna štandardná funkcia na výpočet kĺzavého priemeru, takže to možno urobiť inými metódami.



Metóda 3:

Ďalšou metódou, ktorú možno použiť na výpočet kĺzavého priemeru, je:

napr. konvolvovať ( a , v , režim = 'plná' )

V tejto syntaxi je a prvý vstupný rozmer a v je hodnota druhého vstupného rozmeru. Režim je voliteľná hodnota, môže byť plná, rovnaká a platná.

Príklad č. 01:

Teraz, aby sme vysvetlili viac o kĺzavom priemere v Numpy, uveďme príklad. V tomto príklade vyberieme kĺzavý priemer poľa s funkciou convolve NumPy. Takže vezmeme pole „a“ s 1,2,3,4,5 ako jeho prvkami. Teraz zavoláme funkciu np.convolve a uložíme jej výstup do našej premennej „b“. Potom vytlačíme hodnotu našej premennej „b“. Táto funkcia vypočíta pohyblivý súčet nášho vstupného poľa. Výstup vytlačíme, aby sme zistili, či je náš výstup správny alebo nie.

Potom prevedieme náš výstup na kĺzavý priemer pomocou rovnakej metódy konvolvovania. Na výpočet kĺzavého priemeru budeme musieť vydeliť kĺzavý súčet počtom vzoriek. Hlavným problémom je však to, že keďže ide o kĺzavý priemer, počet vzoriek sa neustále mení v závislosti od miesta, kde sa nachádzame. Aby sme tento problém vyriešili, jednoducho vytvoríme zoznam menovateľov a musíme ho premeniť na priemer.

Na tento účel sme inicializovali ďalšiu premennú „denom“ pre menovateľa. Je to jednoduché na pochopenie zoznamu pomocou triku s rozsahom. Naše pole má päť rôznych prvkov, takže počet vzoriek na každom mieste sa bude pohybovať od jednej do piatich a potom sa zníži z piatich na jednu. Takže jednoducho pridáme dva zoznamy a uložíme ich do nášho parametra „denom“. Teraz túto premennú vytlačíme, aby sme skontrolovali, či nám systém dal skutočných menovateľov alebo nie. Potom náš pohyblivý súčet rozdelíme menovateľmi a vytlačíme ho uložením výstupu do premennej „c“. Spustite náš kód na kontrolu výsledkov.

importovať numpy ako napr.

a = [ 1 , dva , 3 , 4 , 5 ]

b = napr. konvolvovať ( a , napr. tie_ako ( a ) )

vytlačiť ( 'Pohyblivá suma' , b )

názov = zoznam ( rozsah ( 1 , 5 ) ) + zoznam ( rozsah ( 5 , 0 , - 1 ) )

vytlačiť ( 'menovatelia' , názov )

c = napr. konvolvovať ( a , napr. tie_ako ( a ) ) / názov

vytlačiť ( 'Pohyblivý priemer' , c )

Po úspešnom vykonaní nášho kódu dostaneme nasledujúci výstup. V prvom riadku máme vytlačený „Moving Sum“. Vidíme, že máme „1“ na začiatku a „5“ na konci poľa, rovnako ako v našom pôvodnom poli. Ostatné čísla sú súčty rôznych prvkov nášho poľa.

Napríklad šesť na treťom indexe poľa pochádza z pridania 1, 2 a 3 z nášho vstupného poľa. Desiatka na štvrtom indexe pochádza z 1, 2, 3 a 4. Pätnástka pochádza zo súčtu všetkých čísel dohromady atď. Teraz, v druhom riadku nášho výstupu, sme vytlačili menovateľov nášho poľa.

Z nášho výstupu vidíme, že všetky menovatele sú presné, čo znamená, že ich môžeme rozdeliť pomocou nášho poľa pohyblivých súm. Teraz prejdite na posledný riadok výstupu. V poslednom riadku vidíme, že prvý prvok nášho poľa kĺzavého priemeru je 1. Priemer 1 je 1, takže náš prvý prvok je správny. Priemer 1+2/2 bude 1,5. Vidíme, že druhý prvok nášho výstupného poľa je 1,5, takže druhý priemer je tiež správny. Priemer 1,2,3 bude 6/3=2. To tiež robí náš výstup správnym. Takže z výstupu môžeme povedať, že sme úspešne vypočítali kĺzavý priemer poľa.

Záver

V tejto príručke sme sa dozvedeli o kĺzavých priemeroch: čo je kĺzavý priemer, na čo sa používa a ako kĺzavý priemer vypočítať. Podrobne sme to študovali z matematického aj programátorského hľadiska. V NumPy neexistuje žiadna špecifická funkcia alebo proces na výpočet kĺzavého priemeru. Existujú však rôzne ďalšie funkcie, pomocou ktorých môžeme vypočítať kĺzavý priemer. Urobili sme príklad na výpočet kĺzavého priemeru a opísali každý krok nášho príkladu. Kĺzavé priemery sú užitočným prístupom k predpovedaniu budúcich výsledkov pomocou existujúcich údajov.