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

Leave a Comment

Extrahovanie motívov a obrázkov LuckyTemplates z PBIX

Extrahovanie motívov a obrázkov LuckyTemplates z PBIX

Naučte se, jak rozebrat soubor PBIX a extrahovat motivy a obrázky LuckyTemplates z pozadí pro váš report!

Prehľad a vytvorenie domovskej stránky SharePointu

Prehľad a vytvorenie domovskej stránky SharePointu

Naučte sa, ako vytvoriť domovskú stránku SharePointu, ktorá sa predvolene načítava, keď používatelia zadajú adresu vašej webovej lokality.

Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.