Data časových řad v pandách

V tomto tutoriálu se naučíte, jak převzorkovat data časových řad pomocí Pandas. Na celé video tohoto tutoriálu se můžete podívat na konci tohoto blogu .

Co je to za nápad převzorkování? To souvisí s daty časových řad a my změníme frekvenci, s jakou jsou tato data vykazována. Například změna roční hodnoty na měsíční nebo týdenní nebo změna hodinových dat na denní. Zkrátka měníme úroveň v hierarchii.

Toho lze využít z mnoha důvodů, jako je získání spolehlivějších trendů , velikosti vzorků a sezónnost . U některých sestav bude dávat větší smysl, když použijeme nějakou úroveň hierarchie oproti jiné.

Převzorkování může navíc pomoci, pokud máte různé zdroje dat a potřebujete provést spojení dat časových řad. To také pomůže při řešení nesouladu v .

Data časových řad v pandách

Abychom to ještě více rozebrali, máme downsampling a upsampling.

Podvzorkování má snížit frekvenci hlášení . Mohou to být věci jako převod ze sekundy na hodinu, aby bylo dosaženo méně hodnot, nebo převzorkování z měsíce na čtvrtletí.

Na druhou stranu má upsampling zvýšit frekvenci hlášení z úrovně měsíce dolů na den . Více příkladů budeme mít později.

Data časových řad v pandách

Obsah

Jak převzorkovat data časových řad pomocí pand

Jak to uděláme v Pandách?

Nejprve změníme . Potom můžeme převzorkovat pomocí interpolace, která vyplní hodnoty, a můžeme převzorkovat dolů a shrnout agregací hodnot.

Data časových řad v pandách

Pojďme k Jupyter Notebook Python a ověřte si to s Pandas.

Nejprve použijeme Pandy zadáním import pandas jako pd , následuje import seaborn jako sns pro vizualizaci a import matplotlib.pyplot jako plt pro přizpůsobení souboru .

Další věc, kterou musíte udělat, je získat data z importovaných dat vega_datasets . Je to příjemné místo, kde můžete získat ukázkové zdroje. Také získáme knihovnu sp = data.sp500 ( ) a sp.head ( ) .

Data časových řad v pandách

Zde jsou naše dosavadní údaje. Máme denní výnosy a cenu za každý den.

Data časových řad v pandách

Chcete-li nastavit sloupec indexu na datum, zadejte sp.set_index(['date'], inplace=True) a poté znovu zavolejte sp.head .

Data časových řad v pandách

Použití převzorkování k získání hodnot

Pak, abychom měli více hodnot, použijme upsampling. Protože máme data pro každý den, můžeme přejít na hodinu pomocí nejjednodušší funkce, kterou je sp [['cena']]. resample ('H').ffill ( ) , pak jej spusťte. H znamená hodinu, M měsíc, D den atd. Více se o tom můžete dozvědět v dokumentaci Pandas .

Jak vidíme, 1. ledna o půlnoci je cena 1394,46, stejně jako následující hodiny od 1:00 do 4:00. Dalším příkladem je 2. ledna, kde je závěrečná cena 1366,42.

Data časových řad v pandách

Existují další způsoby, jak to provést, i když hodnota není k dispozici na úrovni hodiny. Existují také sofistikovanější způsoby, než jen dopředné plnění . V našem příkladu jsme udělali základní způsob, jak provést interpolaci převzorkování.

Dále přejdeme k downsamplingu zadáním avg_month = sp [['price]].resample ('M').mean ( ) , pak avg_month.head ( ) a spusťte jej pro kontrolu.

Jak je znázorněno, vidíme poslední den každého měsíce a průměrnou cenu. Vzorky můžeme zmenšit tak, aby měly méně hodnot, neboli to, čemu říkáme zmenšení velikosti.

Data časových řad v pandách

Chcete-li si to představit, napište znovu vykreslit kóty, které jsou nakresleny. Poté následuje sns.lineplot . Čárový graf funguje lépe s delší osou X, zatímco hodnota Y je průměrná měsíční cena.

Chcete-li vidět vykreslenou průměrnou cenu za měsíc, spusťte toto.

Data časových řad v pandách

Opět existuje mnoho různých způsobů, jak to můžeme udělat. Například, pokud chceme znát nejnižší cenu za čtvrtletí, stačí zadat quarter_low , pak quarter_low.head , aby se to spustilo.

Nyní tedy vidíme čtvrtletní nejnižší hodnotu zjištěnou v každém čtvrtletí. Takto provedete resamplování.

Data časových řad v pandách




Závěr

Abychom to nestihli, Pandas je opravdu stvořen pro převzorkování a data z časových řad . Pokud pracujete s daty časových řad a máte různé granularity, převzorkování může být velmi užitečné.

Kromě toho si nezapomeňte přečíst dokumentaci Pandas o metodě převzorkování, abyste se naučili mnoho různých způsobů, jak toho dosáhnout. Podívali jsme se na ty základní, ale můžete dělat věci, jako je dvoutýdenní, poslední pracovní den v měsíci a další možnosti převzorkování.

Vše nejlepší,

George Mount


Tabulky proporcí a četností v Excelu

Tabulky proporcí a četností v Excelu

Chtěli jsme se ponořit do tabulek četností v Excelu a také do tabulek proporcí. Podívejte se, co to je a kdy je použít.

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Zistite, ako stiahnuť a nainštalovať DAX Studio a Tabular Editor 3 a ako ich nakonfigurovať na použitie v LuckyTemplates a v Exceli.

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

Tento blog obsahuje vizualizáciu Shape Map pre priestorovú analýzu v LuckyTemplates. Ukážem vám, ako môžete efektívne využiť túto vizualizáciu s jej funkciami a prvkami.

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

V tomto návode predstavujem jedinečný nápad týkajúci sa finančného výkazníctva, ktorý spočíva v prideľovaní výsledkov na vopred určené šablóny tabuliek v rámci LuckyTemplates.

DAX měří v LuckyTemplates pomocí Measure Branching

DAX měří v LuckyTemplates pomocí Measure Branching

Vytvářejte míry DAX v LuckyTemplates pomocí existujících mír nebo vzorců. Tomu říkám technika větvení opatření.

Najvýkonnejšie volanie funkcie v LuckyTemplates

Najvýkonnejšie volanie funkcie v LuckyTemplates

V tomto blogu preskúmajte množinu údajov LuckyTemplates, najvýkonnejšie volanie funkcií, ktoré vám prináša tisíce funkcií M a DAX na dosah ruky.

Techniky modelovania údajov na organizáciu opatrení DAX

Techniky modelovania údajov na organizáciu opatrení DAX

V dnešnom návode sa podelím o niekoľko techník modelovania údajov o tom, ako lepšie usporiadať vaše merania DAX pre efektívnejší pracovný tok.

LuckyTemplates Financial Dashboard: Kompletné tipy na prispôsobenie tabuľky

LuckyTemplates Financial Dashboard: Kompletné tipy na prispôsobenie tabuľky

LuckyTemplates je skvelý nástroj pre finančné výkazníctvo. Tu je návod, ako vytvoriť prispôsobené tabuľky pre váš finančný dashboard LuckyTemplates.

Osvedčené postupy toku jazyka Power Query

Osvedčené postupy toku jazyka Power Query

V tomto návode sa bude diskutovať o toku jazyka Power Query a o tom, ako môže pomôcť vytvoriť hladkú a efektívnu zostavu údajov.

LuckyTemplates vlastní ikony | Vizualizační technika PBI

LuckyTemplates vlastní ikony | Vizualizační technika PBI

Budu diskutovat o jedné z mých oblíbených technik kolem vlastních ikon LuckyTemplates, která používá vlastní ikony dynamickým způsobem ve vizuálech LuckyTemplates.