Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Pre tento príspevok by som chcel hovoriť o nedávnom tipe LuckyTemplates, ktorý som vymyslel pre člena . Otázka sa týkala užitočného vzoru, pokiaľ ide o pohľad na prvých N pracovných dní alebo prvých N zúčtovateľných dní daného mesiaca oproti rovnakému obdobiu v predchádzajúcom mesiaci. Celé video tohto návodu si môžete pozrieť v spodnej časti tohto blogu.

TJ Henneman chcel porovnať prvých 5 zúčtovateľných dní aktuálneho mesiaca s prvými 5 zúčtovateľnými dňami predchádzajúceho mesiaca a potom v deň 10, deň 15 a deň 20. Upozorňujeme, že sa chce pozrieť len na zúčtovateľné dni, takže to nezahŕňa víkendy a sviatky. Môžete si pozrieť jeho príspevok.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Myslím, že je tu skutočne zaujímavé riešenie dotazu na výkon . Na tomto probléme som pracoval aj so zaujímavým riešením DAX . Tomu sa budem venovať v inom návode.

Chcem vás tiež previesť výzvou, ktorú som použil pre LuckyTemplates Challenge #16. Použil som rolovací indikátor , ktorý bude pre tento konkrétny problém fungovať naozaj dobre.

Ale pre tento tip LuckyTemplates sa dotknem riešenia dotazu na výkon. Poďme skočiť do LuckyTemplates a pozrieť sa na naše údaje. V tomto prípade som údaje simuloval pomocou nástroja na cvičný súbor údajov, ktorý sme zostavili v LuckyTemplates a ktorý môžete používať zadarmo. Je to skvelé na zostavenie základného súboru údajov hviezdnej schémy a na testovanie riešení.

Obsah

Náš dátový model

Náš dátový model používa našu rozšírenú tabuľku dátumov a sériu tabuliek dimenzií. Máme tiež tabuľku Predaj s čiastočnými údajmi za tri roky v prvom roku, úplnými údajmi v druhom roku a čiastočnými údajmi v treťom roku. Nakoniec tu máme aj a.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Tento súbor údajov som tiež mierne upravil. Priniesol som tabuľku sviatkov a prepojil som ju s tabuľkou rozšírených dátumov , aby mohla správne vypočítať sviatky, ktoré v tejto analýze odstránime. Ak si nie ste istí, ako to urobiť, pozrite si tento návod .

Potom som v množine údajov odfiltroval prvý čiastočný mesiac, pretože tento mesiac obsahoval iba niekoľko dní údajov a nemal pracovné dni, ktoré potrebujeme. Berte na vedomie, že začíname prvým celým mesiacom; ale okrem toho to bude váš štandardný súbor údajov. Poďme teda do tohoa začnite pracovať na tomto tipe LuckyTemplates.

Ak sa pozrieme na naše údaje, môžete vidieť, že v určitý deň máme rôzne objednávky. Cieľom je očíslovať všetko, čo začína 1. aprílom ako náš prvý pracovný deň, 2. apríl ako náš druhý pracovný deň, 3. apríla ako náš tretí pracovný deň atď. Budeme to číslovať od 1 do N pracovných dní za každý mesiac, pričom sa počítajú aj víkendy a sviatky.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vytvorenie duplicitnej tabuľky

Na začiatok musíme vytvoriť duplikát tejto tabuľky, aby sme ju mohli agregovať do celkového predaja a preniesť ju na úroveň jednotlivých pozorovaní. Túto duplicitnú tabuľku budeme nazývať Sales Aggregated .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Možno ste si všimli, že sme tabuľku Predaj duplikovali , namiesto toho, aby sme na ňu len odkazovali. V tomto prípade túto tabuľku spojíme s pôvodnou tabuľkou Predaj. Ak naň odkazujeme, spôsobí to problémy, keď ich spojíme.

Prvá vec, ktorú musíte urobiť, je použiť položku Zoskupiť v stĺpci Dátum objednávky . Kliknite na tlačidlo Rozšírené , pretože nám to poskytne úplný obraz o tom, čo tu robíme. Ako nový názov stĺpca dáme Celkový denný predaj a bude to súčet celkového počtu riadkov.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Teraz máme každý dátum (prvý stĺpec) a celkový predaj za daný deň (druhý stĺpec).

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Zlúčenie tabuľky dátumov

Ďalším krokom v tomto tipe LuckyTemplates je spojiť ho s našou tabuľkou Dátumy, aby ste zistili, ktoré z týchto dní sú pracovné dni a ktoré nie. Môžeme znova zoskupiť , rozdeliť ich a primerane očíslovať.

Zlúčime našu tabuľku dátumov a prepojíme dátum objednávky s dátumom . V spodnej časti vidíme, že výber zodpovedá každému riadku tabuľky tak, ako má.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Oblasť, ktorá nás primárne zaujíma, je IsBusinessDay .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Toto je primárne pole, podľa ktorého budeme zoskupovať, a potom použijeme polia Mesiac a rok a Mesiac rok .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Musíme tiež skontrolovať DayofWeekName , aby sme sa uistili, že filtrujeme správne dni.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Po kliknutí na tlačidlo OK nám poskytne presne to, čo potrebujeme.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Musíme sa tiež uistiť, že dátum objednávky je zoradený vzostupne.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Potom sa vrátime späť a vytvoríme druhú skupinu podľa .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Tentoraz klikneme na tlačidlo Rozšírené , zoskupíme mesiac a rok a potom pridáme druhé zoskupenie.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Druhá skupina je pre IsBusinessDay , aby sme mohli očíslovať tie, kde sú pracovné dni pravdivé.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Potom vytvoríme funkciu AllRows , takže sa nebude agregovať a budeme sa môcť vrátiť na pôvodnú úroveň podrobnosti.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

To by nám malo poskytnúť vnorené tabuľky , v ktorých môžeme pre každý mesiac vidieť tabuľku pre hodnotu true a tabuľku pre hodnotu false .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vytvorenie vlastného stĺpca

Ďalej musíme vytvoriť vlastný stĺpec na pridanie počtu, ktorý potrebujeme pre pracovné dni.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Použijeme funkciu s názvom Table.AddIndexColumn , ktorá bude pracovať s tabuľkou AllRows a budeme ju nazývať Day Index . Chceme, aby index začínal 1 a zvyšoval sa o 1 s každým novým pracovným dňom.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Potom môžeme odstrániť prvé tri stĺpce a rozšíriť náš štvrtý vlastný stĺpec.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Ak sa pozrieme na výsledok, poskytne nám denný index, ktorý počíta pracovné dni (pravda) a potom počíta dni, ktoré sú víkendy a sviatky v každom mesiaci (nepravda). Ďalej musíme skontrolovať, či sú v správnom type poľa.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vráťme sa k našej tabuľke Predaj. Zlúčime súhrnnú tabuľku, ktorú sme práve vytvorili, s tabuľkou Predaj.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Zlúčime ich k dátumu objednávky . V spodnej časti vidíte, že sa zhoduje so všetkými riadkami z prvej tabuľky.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Keď rozbalíme stĺpec Sales Agg, vyberte nové polia, ktoré sme práve pridali: stĺpce Month & Year , DayOfWeekName , MonhnYear , IsBusinessDay a DayIndex .

Pred kliknutím na tlačidlo Zavrieť a použiť si tiež vyčistíme údaje . Presuňme tabuľku Sales Agg v našej sekcii Data Prep , potom túto tabuľku uvoľnite, pretože ju nebudeme potrebovať v rámci dátového modelu. Potom kliknite na Zavrieť a použiť .

Naša prípravná práca na výkon dotazu je teraz hotová.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vytvorenie parametra What-If

Pamätajte, že v pôvodnej úlohe chceme meniť počet dní, na ktoré sa pozeráme, z 5 na 10 a 15 na 20. Myslím, že najlepší spôsob, ako to urobiť, je pomocou nového parametra what- if .

Čo keby parameter nazveme Prvých N pracovných dní a jeho dátový typ bude celé číslo. Minimum je nastavené na prírastok 1 a maximum 20. Potom predvolene nastavíme 5, čo je prvá hodnota, ktorú používateľ chcel.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Teraz máme krájač, ktorý automaticky vytvára mieru zberu na zachytenie hodnoty krájača.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vytvorme tabuľku s našimi výsledkami. Umiestnime našu dimenziu Mesiac a rok na plátno a potom ju zoraďme podľa Mesiaca a roku .

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Keď máme toto pole správne zoradené, môžeme jednoducho vypustiť mieru celkového predaja a rozšíriť ju.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Vytvorenie miery pre počet pracovných dní

Potrebujeme vytvoriť ešte jedno opatrenie, ktoré zohľadní hodnotu parametra posúvača a počíta len pre počet pracovných dní.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Toto nové opatrenie nazveme Celkový predaj N autobusových dní . Začneme funkciou, pretože určite meníme kontext, a naším opatrením celkového predaja. Budeme to filtrovať pomocou tabuľky Predaj.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Ďalším krokom je napísanie podmienok, ktoré chceme pre posuvník zohľadniť. Máme svoj index predajných dní, ktorý sme vytvorili v Power Query, a chceme, aby bol menší alebo rovný hodnote prvých N pracovných dní, čo je zozbieraná hodnota filtra.

Napríklad, ak je posuvník na 5, chceme, aby všetky dni v tabuľke Predaje mali index dňa menší alebo rovný 5.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

A potom chceme vyňať nepracovné dni. Budeme odkazovať na tabuľku Dátum a použijeme pole IsBusinessDay. Pozrieme sa len na výsledok, ktorý je PRAVDIVÝ.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Nakoniec vráťte kontext pre mesiac a rok a uzavrite meranie. V tomto bode by sme už mali ísť.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Umiestnime nové opatrenie do našej tabuľky.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Posuvník môžeme prepnúť na 10-dňovú značku a tabuľka bude dynamicky počítať pri 10-dňovej značke.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Záver

V tomto tipe LuckyTemplates sme hovorili o tom, ako dynamicky vykonávať podobné porovnanie pomocou riešenia Power Query. Môžeme to umiestniť do stĺpcového grafu alebo čiarového grafu.

V niektorých z našich pripravovaných tutoriálov sa pozrieme na riešenie DAX a implementujeme vizualizáciu posúvača KPI.

Ak sa vám páčil obsah uvedený v tomto konkrétnom návode, nezabudnite sa prihlásiť na odber televízneho kanála LuckyTemplates.


Sloupec indexu Pandas Drop: Vysvětleno s příklady

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Sloupec indexu Pandas Drop: Vysvětleno s příklady

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

Prehľad dynamického obsahu Power Automate

Prehľad dynamického obsahu Power Automate

Pochopte, čo je dynamický obsah Power Automate a ako umožňuje používateľom vyberať odkazy na polia z predchádzajúcich krokov alebo zapisovať výrazy.

Změna umístění souboru pomocí parametru dotazu v LuckyTemplates

Změna umístění souboru pomocí parametru dotazu v LuckyTemplates

V tomto tutoriálu se naučíte, jak sdílet soubor s osobou, která není součástí vaší společnosti, pomocí parametru dotazu sql v LuckyTemplates.

Použití funkce Odebrat a nastavení vyskakovacích oken s potvrzením

Použití funkce Odebrat a nastavení vyskakovacích oken s potvrzením

Zjistěte, jak používat funkci odebrání a jak nastavit vyskakovací okna pro potvrzení v aplikaci, kterou jste vytvořili od začátku.

Vizualizace kontextu filtru v LuckyTemplates DAX Studio

Vizualizace kontextu filtru v LuckyTemplates DAX Studio

Naučte se vizualizovat kontext filtru libovolné buňky v tabulce nebo matici v LuckyTemplates DAX Studio pomocí popisků.

Power Automate vytváření toků od nuly

Power Automate vytváření toků od nuly

Naučte se vytvářet toky Power Automate od začátku. Místo použití šablony budeme spouštěče a akce vytvářet sami.

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Tip LuckyTemplates: Ako porovnať prvých N pracovných dní

Pozrite si tento tip LuckyTemplates od Briana o tom, ako môžete dynamicky porovnávať prvých N pracovných dní pomocou dotazu Power.

Modelom Power Apps: Nastavenie prostredia a navigácia

Modelom Power Apps: Nastavenie prostredia a navigácia

Získajte informácie o modelových aplikáciách Power Apps, o tom, ako nastaviť prostredie a ako sa v ňom efektívne pohybovať.

Modelom podporované aplikácie Power Apps: Mapy stránok a ako fungujú

Modelom podporované aplikácie Power Apps: Mapy stránok a ako fungujú

Získajte viac informácií o práci s mapami lokalít v modelových aplikáciách Power Apps a objavte rôzne zložitosti a spôsoby, ako sa s nimi vysporiadať.