Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
I denne øvelse lærer du, hvordan du gensampler tidsseriedata ved hjælp af Pandas. Du kan se den fulde video af denne tutorial nederst på denne blog .
Hvad er denne idé med resampling? Dette er relateret til tidsseriedata, og det, vi vil gøre, er at ændre frekvensen, hvormed disse data rapporteres. For eksempel ændring af årlig værdi til månedlig eller ugentlig, eller ændring af timedata til daglig. Kort sagt, vi ændrer niveauet i hierarkiet.
Dette kan bruges af en række årsager, såsom at få mere pålidelige tendenser , stikprøvestørrelser og sæsonbestemthed . Ved nogle rapporter vil det give mere mening, hvis vi bruger et eller andet niveau af hierarkiet i forhold til et andet.
Derudover kan resampling hjælpe, hvis du har forskellige datakilder, og du skal udføre sammenføjning af tidsseriedata. Dette vil også hjælpe, når du håndterer et mismatch i .
For at nedbryde dette yderligere har vi downsampling og upsampling.
Nedsampling er at mindske rapporteringsfrekvensen . Det kan være ting som at konvertere fra et sekund til en time for at få færre værdier eller nedsampling måned til kvartal.
På den anden side er upsampling at øge rapporteringsfrekvensen fra månedsniveau og ned til dagen . Det får vi flere eksempler på senere.
Indholdsfortegnelse
Sådan gensamples tidsseriedata ved hjælp af pandaer
Hvordan skal vi gøre dette i Pandas?
Først og fremmest vil vi ændre . Derefter kan vi upsample ved hjælp af interpolation, som vil udfylde værdierne, og vi kan downsample for at rulle op ved at aggregere værdierne.
Lad os gå over til Jupyter Notebook Python og tjekke dette ud med Pandas.
Til at starte med vil vi bruge Pandas ved at indtaste import pandas som pd , efterfulgt af import seaborn som sns for at visualisere det, og importere matplotlib.pyplot som plt for at tilpasse .
Den næste ting at gøre er at hente data fra vega_datasets importdata . Det er et rart sted at få eksempler på kilder. Vi vil også få sp = data.sp500 ( ) og sp.head ( ) bibliotek .
Her er vores data indtil videre. Vi har de daglige afkast og pris for hver dag.
For at indstille kolonnen indeks til dato skal du indtaste sp.set_index(['date'], inplace=True) og derefter kalde sp.head igen.
Brug af upsampling for at få værdier
Så lad os bruge upsampling for at få flere værdier. Da vi har data for hver dag, kan vi gå ned til timen ved at bruge den enkleste funktion som er sp [['pris']]. resample ('H').ffill ( ) , og kør det derefter. H står for time, M for måned, D for dagen og så videre. Du kan lære mere om dette i Pandas-dokumentationen .
Som vi kan se, den 1. januar ved midnat, er prisen 1394,46, det samme som de efterfølgende timer fra 01:00 til 04:00. Et andet eksempel er den 2. januar, hvor lukkekursen er 1366,42.
Der er andre måder at gøre dette på, selvom værdien ikke er tilgængelig på timeniveau. Der er også mere sofistikerede måder end blot at lave en fremadfyldning . For vores eksempel er det, vi gjorde, den grundlæggende måde at lave upsampling-interpolation på.
Lad os derefter gå til downsampling ved at indtaste avg_month = sp [['price]].resample ('M').mean ( ) , derefter avg_month.head ( ) og køre det for at kontrollere.
Som illustreret kan vi se den sidste dag i hver måned og den gennemsnitlige pris. Vi kan reducere prøverne for at have færre værdier, eller hvad vi kalder downsizing.
For at visualisere dette, lad os skrive om-plot de dimensioner, der er tegnet. Derefter efterfulgt af sns.lineplot . Linjeplottet fungerer bedre med en længere X-akse, mens Y-værdien er den gennemsnitlige månedlige pris.
Lad os køre dette for at se gennemsnitsprisen for måneden plottet.
Igen, der er mange forskellige måder, vi kan gøre dette på. For eksempel, hvis vi vil vide den laveste pris pr. kvartal, skal vi bare skrive quarter_low og derefter quarter_low.head for at køre det.
Så der kan vi nu se den kvartalsvise laveste værdi fundet i hvert kvartal. Sådan laver du en resample.
Konklusion
For at afslutte det, er Pandas virkelig bygget til resampling og tidsseriedata . Hvis du arbejder med tidsseriedata og har forskellige granulariteter, kan resampling være meget nyttig.
Sørg desuden for at læse Pandas-dokumentationen om resample-metoden for at lære en masse forskellige måder at gøre dette på. Vi kiggede på de grundlæggende, men du kan gøre ting som f.eks. hver anden uge, den sidste arbejdsdag i måneden og flere muligheder for resampling.
Alt det bedste,
George Mount
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
Lær nogle fantastiske analytiske teknikker, som vi kan gøre til datamodellering i LuckyTemplates ved hjælp af DAX-understøttende tabeller.
Her dykker vi ned i LuckyTemplates Advanced DAX og implementerer rangeringslogik for at få en meget unik indsigt. Jeg viser også måleforgrening i dette eksempel.
Denne blog introducerer den nye funktion i LuckyTemplates, What-If-analyseparameteren. Du vil se, hvordan det gør alt hurtigt og nemt til din scenarieanalyse.
Lær, hvordan du afgør, om din omsætningsvækst er god ved at kontrollere, om dine avancer er udvidet ved hjælp af LuckyTemplates, der måler forgrening.
Lær og forstå, hvordan du kan oprette og bruge LuckyTemplates Parameters, som er en kraftfuld funktion i Query Editor.
Denne vejledning vil diskutere om oprettelse af et rundt søjlediagram ved hjælp af Charticulator. Du lærer, hvordan du designer dem til din LuckyTemplates-rapport.
Lær, hvordan du bruger PowerApps-funktioner og -formler til at forbedre funktionaliteten og ændre adfærd i vores Power Apps-lærredsapp.
I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.
RANKX fra LuckyTemplates giver dig mulighed for at returnere rangeringen af et specifikt tal i hver tabelrække, der udgør en del af en liste over tal.