Čo je to Power Query a jazyk M: podrobný prehľad
Tento tutoriál poskytuje prehľad o editore Power Query a jazyku M na pracovnej ploche LuckyTemplates.
Zistil som, že väčšina ľudí je zmätená, pokiaľ ide o pochopenie toho, ako DAX funguje v kontexte riadkov . Je to preto, lebo kontext riadkov môže byť dosť komplikovaný a zbytočne. V tomto článku sa teda dotkneme kontextu riadkov . Celé video tohto návodu si môžete pozrieť v spodnej časti tohto blogu.
Spôsob, akým premýšľam o kontexte riadkov, je prostredníctvom iterácií alebo iteračných funkcií . Hneď, ako som to rozlíšil v mojej mysli, to dávalo väčší zmysel z hľadiska toho, čo sa vlastne deje vo výpočtovom motore.
Ako rekapituláciu sme diskutovali o tom, že existujú tri typy kontextov: kontext hodnotenia , kontext filtra a kontext riadka .
Akýkoľvek výpočet DAX funguje v dvoch krokoch. Kontext hodnotenia je vždy prvý a potom sa rozvetvuje do kontextu filtra alebo kontextu riadku v závislosti od toho, akú funkciu napíšete.
Obsah
Pochopenie kontextu riadkov
Kontext riadkov je o iterácii.
Ukážem vám niekoľko príkladov a dúfame, že vám to pomôže pochopiť, čo kontext riadkov v skutočnosti robí na konci.
Kontext riadkov verzus kontext filtra
V našom príklade sa vzorec počíta cezpretože ide o jednoduchú agregáciu. Zhŕňa celý stĺpec Množstvo po umiestnení všetkých počiatočných filtrov.
Počiatočný filter v tabuľke Predaj je Produkt 1. Sčítaním každého predaného množstva dostaneme 165.
Teraz vám ukážem, ako získať presne rovnaký výsledok, ale vypočítaný veľmi odlišným spôsobom. Najprv vytvorím novú mieru pre iteráciu množstva predaného množstva pomocou iteračného vzorca.
Príklady iteračných funkcií zahŕňajú SUMX ,, MANYX a COUNTX . V tomto prípade použijeme SUMX .
Funkcia SUMX ma požiadala, aby som vložil tabuľku, takže vložím tabuľku Predaj. A potom ma to požiadalo o výraz, takže som to dal do stĺpca Množstvo.
Táto funkcia je úplne odlišná od prvej funkcie, ale keď ju pretiahnem, dostanem presne rovnaký výsledok.
Dostávame presne rovnaké výsledky, pretože v konečnom dôsledku ide o rovnaký výpočet. Len to bolo vypočítané iným spôsobom.
Iterácia predaného množstva bola vypočítaná pomocou kontextu riadku , zatiaľ čo celkové predané množstvo bolo vypočítané pomocou kontextu filtra .
Výpočet iterácie predaného množstva pomocou kontextu riadkov
Poďme si teraz prejsť krok za krokom, ako sa vypočíta Iterácia predaného množstva. Najprv si musíte pamätať, že musíte opustiť kontext počiatočného ocenenia, ktorým je v tomto prípade produkt 1. A potom cez kontext riadku prechádzame cez každý jeden riadok v tabuľke, ktorý určíme.
V tomto prípade špecifikujeme tabuľku Predaj a potom sa pozrieme na každý jeden riadok v stĺpci Množstvo.
Počas počiatočného hodnotenia sa produkt 1 určí podľa toho, čo je filtrované v stĺpci ID produktu. A potom spočítava riadky v stĺpci Množstvo. Zakaždým, keď zasiahne riadok, vstúpi a uloží výsledok do pamäte.
Keď sa dostane na koniec tabuľky, vykoná vyhodnotenie všetkých výsledkov, ktoré sú uložené v pamäti, a potom vykoná akýkoľvek výpočet, ktorý od neho požadujete, čo je v tomto prípade SUMX .
Prečo používať kontext riadka alebo funkciu iterácie?
Je to preto, že v rámci iteračnej funkcie môžete robiť oveľa zložitejšie veci. Do vnútra môžete napísať nejakú veľmi pokročilú logiku.
Napríklad pre každý riadok v tabuľke Predaj sa množstvo vynásobí 2. Teraz uvidíte, že prebieha rovnaký proces výpočtu, ale dostávame iné výsledky.
Je to preto, že pre každý jeden riadok píšeme inú logiku. Po prejdení každého jedného riadku v stĺpci množstva vynásobíme hodnotu dvomi a potom sa uloží do pamäte. Na konci toho urobíme SUM .
Môžeme tu tiež napísať rôzne veci vrátane pokročilej logiky, ako je napralebologika.
Existuje hromada príkladov, kde by bolo lepšie použiť na výpočet iteračnú funkciu alebo kontext riadku , a nie kontext agregácie alebo filtra .
Kľúčové poznámky k pochopeniu súvislostí v LuckyTemplates
Ak chcete zhrnúť všetky kľúčové veci týkajúce sa kontextu, nezabudnite, že výpočet v jazyku DAX funguje v dvoch krokoch. Prvým krokom je vždy kontext hodnotenia . Veľmi záleží na kontexte hodnotenia .
Keď pochopíte, aký je kontext hodnotenia pre každý jednotlivý výsledok, jazyk DAX sa rozvetví na dva rôzne spôsoby. Môže sa vypočítať buď pomocou kontextu filtra, alebo prostredníctvom kontextu riadka.
Výber kontextu, ktorý sa má použiť, závisí od toho, aký vzorec píšete. Ak teda napíšete jednoduchý agregačný vzorec , potom ho vypočíta pomocou kontextu filtra . Ak však napíšete iteračnú funkciu ako SUMX, vypočíta vzorec pomocou kontextu riadka .
Keď budete v jazyku DAX o niečo pokročilejší, v skutočnosti môžete mať v jednej funkcii viacero kontextov. Ale skôr, ako sa tam dostanete, musíte skutočne pochopiť, čo je kontext v jeho najjednoduchšej forme.
Záver
Pochopenie typov kontextu je absolútne kľúčové, keď sa učíte DAX a chcete robiť pokročilejšiu prácu. Keď začnete písať skutočne pokročilý vzorec DAX, máte viacero kontextov, ktoré fungujú súčasne a musíte pochopiť, čo každá jednotlivá časť tohto vzorca robí, aby ste dosiahli požadované výsledky.
Tu je niekoľko odporúčaných odkazov, kde sa dozviete viac o aplikácii kontextu riadkov v LuckyTemplates:
Kontext hodnotenia – (1.8) Sprievodca jazykom DAX pre úplných začiatočníkov
Kontext filtra – (1.9) Sprievodca jazykom DAX pre úplných začiatočníkov
Užite si prácu cez tento.
Tento tutoriál poskytuje prehľad o editore Power Query a jazyku M na pracovnej ploche LuckyTemplates.
Zistite, ako vytvoriť stránkovanú správu, pridať texty a obrázky a potom exportovať správu do rôznych formátov dokumentov.
Zistite, ako používať funkciu automatizácie SharePointu na vytváranie pracovných postupov a ako pomôcť pri mikromanažovaní používateľov, knižníc a zoznamov SharePointu.
Zdokonaľte svoje zručnosti v oblasti vývoja zostáv zapojením sa do výzvy v oblasti analýzy údajov. Accelerator vám môže pomôcť stať sa super používateľom LuckyTemplates!
Naučte se, jak vypočítat průběžné součty v LuckyTemplates pomocí DAX. Průběžné součty vám umožní nezabřednout do žádného jednotlivého výsledku.
Pochopte koncept proměnných v jazyce DAX v rámci LuckyTemplates a důsledky proměnných pro způsob výpočtu vašich mír.
Získajte viac informácií o vlastnom vizuáli nazývanom graf LuckyTemplates Slope, ktorý sa používa na zobrazenie nárastu/zníženia pre jednu alebo viacero metrík.
Objavte farebné motívy v LuckyTemplates. Sú nevyhnutné, aby vaše zostavy a vizualizácie vyzerali a fungovali bez problémov.
Výpočet priemeru v LuckyTemplates možno vykonať mnohými spôsobmi, aby ste získali presné informácie pre vaše obchodné správy.
Pojďme se ponořit do standardního motivu LuckyTemplates a prohlédnout si některé funkce zabudované do samotné aplikace LuckyTemplates Desktop.