Skapa en datumtabell i LuckyTemplates
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Prognoser är en viktig aspekt av dataanalys, eftersom det tillåter företag att fatta välgrundade beslut om framtiden baserat på historiska data. Ett effektivt sätt att utföra denna uppgift är att använda LuckyTemplates prognosmodell med Python. LuckyTemplates är ett populärt business intelligence-verktyg som låter användare skapa interaktiva datavisualiseringar, rapporter och instrumentpaneler.
I den här handledningen lär vi oss hur man skapar en med Python. Vi kommer att använda Python i Power Query för att skapa prognostiserade värden och ta med dem i visualiseringarna av LuckyTemplates. Du kan se hela videon av denna handledning längst ner på den här bloggen .
Innehållsförteckning
LuckyTemplates Prognosmodeller
Nedan finns några LuckyTemplates prognosmodeller för att visa dig vad vi vill uppnå i denna handledning. Dessa är faktiska sidvisningar som avslöjar veckosäsongsvariationer och några säsongstoppar i data.
Mot slutet kan vi se den ökande trenden i vår data som vi vill ta upp i vår modell.
LuckyTemplates prognosmodell: kontroller och begränsningar
Nedan är modellen för 30-dagarsprognosen skapad med LuckyTemplates. Den har samma säsongsvariation som de faktiska sidvisningarna, och i LuckyTemplates har vi också möjlighet att kontrollera en del av datan.
Vi kan göra det genom att öppna Analytics i rutan Visualiseringar . Håll sedan muspekaren ner till Prognos > Alternativ .
Lägg 30 dagar i Prognoslängden och ställ in konfidensintervallet på 95 %. Systemet kan förutsäga säsongsvariationer med dess standardinställning, men vi kan också lägga till 7 för att representera veckosäsongsvariationer.
Klicka på Apply så ska vi få en modell som liknar den ovan.
Trendanalys för prognosmodeller för Python och LuckyTemplates
LuckyTemplates gör ett bra jobb med att modellera säsongsvariationer. Dess trendlinje fungerar dock inte på samma sätt.
För att starta , aktivera trendlinjen i fönstret Visualiseringar .
Väl på kan vi se en uppåtgående trend. Vi borde kunna lägga till den trenden i vår data som sedan kommer att påverka prognosen.
Det kan vi göra med vår modell. Som vi ser i modellen nedan tog trenden upp säsongsvariationer istället för att hålla sig oförändrad.
Använder Python-kod för prognoser
Att använda för att uppnå vårt mål är ingen svår uppgift. För att börja, öppna din Jupyter Notebook .
Ta in den data vi behöver: pandor, matplotlib.pyplot, seaborn och ExponentialSmoothing .
Det finns andra modeller som förmodligen kommer att vara mer exakta, men de kommer att kräva mer optimering.
Vi kommer också att ta in seasonal_decompose för att se säsongsvariation och trend. Använd sedan webbprognosen web_forecast.xlsx för att läsa vår data.
Byt sedan datum med koden nedan.
Ställ in indexet för vår datauppsättning till Date och kalla det ts. Ställ sedan in datauppsättningens frekvens. Vi vet att vi har dagliga data, så låt oss ställa in frekvensen som d som i dag och spara den som ts .
Rita slutligen med ts.plot ( ).
Efter plottning bör vi se exakt vad vi såg i vår LuckyTemplates-anteckningsbok.
För att få en bättre uppfattning om komponenterna i vår faktiska trend kan vi använda följande kod.
Den första modellen är vår Actuals . Bredvid den finns trendlinjen som vi plockar upp med seasonal_decompose(ts).plot(); .
Detta är trenden som vi måste lägga till modellen.
Vi har också den säsongsvariation som vi kan lägga till i både LuckyTemplates och Exponential Smoothing-modellen.
Vår senaste modell visar resterna eller de som är oväntade i data som representeras av punkter. Lägg märke till att när vi går mot slutet av vår data kan vi se att det händer många fler händelser.
Utbilda modellen
Med vår modell behöver vi träna upp vår data som vanligtvis följs av testning. Men i det här fallet kommer vi inte att testa vår modell eftersom vi bara kommer att använda det som modellen ger oss.
Det finns 298 dagar i vår datauppsättning, men i det här exemplet behöver vi bara modellen för att komma ihåg 290 av dessa dagar. Det beror på att vi inte vill ge modellen all data som den inte kan lära sig och så småningom bara kommer att kopiera.
I grund och botten har vi denna träningsuppsättning på 290 dagar av 298.
Använd sedan ExponentialSmoothing för vår modell. Skicka sedan in träningsdatauppsättningen som är 290 dagar och använd add (additiv) för vår trend, mul (multiplikativ) för vår säsong och 7 för säsongsperioderna. Passa sedan in dessa data i modellen.
Additiva och multiplikativa trender
Låt oss få en snabb överblick över vad de additiva och multiplikativa trenderna är.
I en additiv modell ökar trenden långsamt, medan den i den multiplikativa modellen ökar exponentiellt och det händer en hel del också. Vi kan använda någon av de två för att få en annan typ av förutsägelse.
Vi kan leka med additiva och multiplikativa metoder för att modifiera vår förutsägelse. Vår nuvarande data växer tydligt så det är absolut nödvändigt att använda additiv, men vi kan också försöka använda multiplikativ för att se vad vi får.
Ändra till exempel säsongsvariationen från mul till add .
Kör data och observera hur förutsägelsen förändras.
På samma sätt kan vi ändra trenden från add till mul .
Detta borde ge en multiplikativ trend som är lite större.
Efter att ha provat de möjliga kombinationerna visade det sig att användningen av mul för både trend och säsong gav det BÄSTA resultatet.
När vi väl har den här prognosmodellen kan vi använda den för att prognostisera 30 dagar i förväg.
LuckyTemplates implementering
Låt oss skapa samma LuckyTemplates-prognosmodell i vår LuckyTemplates-anteckningsbok.
I vår LuckyTemplates Forecast går du till Visualiseringar > Analytics > Alternativ. Lägg märke till hur vi ställer in prognoslängden till 30 dagar.
Låt oss se hur vi kan implementera den koden väldigt enkelt i Power Query.
Klicka på Transformera data.
Ta in data och Lägg till anpassad kolumn för kategorin i Power Query Editor . Använd faktiska värden så att vi senare kan dela upp faktiska värden från prognoser.
Om vi går till prognosfrågan ser vi en mindre datauppsättning motsvarande 30 dagar framåt i tiden.
Granska Python-skriptet
Vårt Python-skript innehåller liknande information. Först tar vi in en datauppsättning, sparar den som df , ändrar Date till datetime och ställer in frekvensen till d (dag).
Vi tar även in vår ExponentialSmoothing- modell från holtwinters . Vi tar de första 290 dagarna som vår träningsuppsättning och lägger sedan till den datan i modellen.
I vår ExponentialSmoothing -modell lägger vi till träningsdata och sätter både trender och säsongsbetonade till mul (multiplikativ) och säsongsperioderna till 7 dagar. Då passar vi vår modell.
Därefter får vi en ny dataram eller tabell med vår prognos. Vi återställer indexet och ser till att de heter Datum och Sidvisningar för att matcha det vi har i vår ursprungliga data. Slutligen klickar vi på OK.
I utgången får vi alla dessa variabler i datan.
Gå till Tillämpade steg och klicka på Added Column . Detta öppnar en tabell med våra förutsagda värden och den anpassade kolumnen som har Prognos som kategori.
I nästa fråga lägger vi helt enkelt till de två datamängderna där vi har faktiska uppgifter och prognoser .
Klicka på Stäng och använd.
Modellen ändrades något när vi tillämpade den multiplikativa metoden.
Jämfört med LuckyTemplates kan vi enkelt göra en prognos och optimera modellen lite mer genom att ändra trendens additiva karaktär och säsongsvariationen i . Vi kan också lägga till dessa förutsägelser till vår faktiska datamängd.
Slutsats
I den här bloggen gick vi igenom processen att skapa en prognosmodell i LuckyTemplates med hjälp av . Genom att integrera i LuckyTemplates kan vi få tillgång till ett brett utbud av dataanalys- och modelleringsverktyg, vilket gör att vi kan skapa mer avancerade prognoser.
Med de färdigheter du har lärt dig i den här handledningen kan du nu skapa dina egna prognosmodeller i LuckyTemplates och använda dem för att planera för framtiden med tillförsikt. Kom ihåg att prognoser är en iterativ process, så tveka inte att experimentera med olika algoritmer och tekniker för att hitta den som fungerar bäst för din data och kontinuerligt kontrollera och uppdatera din modell när ny data kommer in.
Med vänliga hälsningar,
Gaelim Holland
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.
I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.
Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.
Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.
I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.
I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.
I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.
I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.
Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.