Sdílet prostřednictvím


Kurz: Extrakce a výpočet měr Power BI z poznámkového bloku Jupyter

V tomto kurzu se dozvíte, jak pomocí SemPy (Preview) vypočítat míry v sémantických modelech (datové sady Power BI).

V tomto kurzu se naučíte:

  • Vyhodnocení měr Power BI prostřednictvím kódu programu prostřednictvím rozhraní Pythonu knihovny Pythonu sémantického odkazu (SemPy).
  • Seznamte se s komponentami SemPy, které pomáhají překlenout mezeru mezi AI a BI. Mezi tyto komponenty patří:
    • FabricDataFrame – struktura podobná knihovně pandas rozšířená o další sémantické informace.
    • Užitečné funkce, které umožňují načíst sémantické modely, včetně nezpracovaných dat, konfigurací a měr.

Požadavky

  • V levém navigačním podokně vyberte Pracovní prostory , abyste našli a vybrali pracovní prostor. Tento pracovní prostor se stane vaším aktuálním pracovním prostorem.

  • Stáhněte si sémantický model PBIX.pbix ukázky analýzy maloobchodního prodeje a nahrajte ho do svého pracovního prostoru.

Sledování v poznámkovém bloku

Tento kurz doprovází poznámkový blok powerbi_measures_tutorial.ipynb .

Pokud chcete otevřít doprovodný poznámkový blok pro tento kurz, postupujte podle pokynů v části Příprava systému na kurzy datových věd a importujte poznámkový blok do pracovního prostoru.

Pokud byste raději zkopírovali a vložili kód z této stránky, můžete vytvořit nový poznámkový blok.

Než začnete spouštět kód, nezapomeňte k poznámkovému bloku připojit lakehouse.

Nastavení poznámkového bloku

V této části nastavíte prostředí poznámkového bloku s potřebnými moduly a daty.

  1. Nainstalujte SemPy z PyPI pomocí %pip možnosti in-line instalace v poznámkovém bloku:

    %pip install semantic-link
    
  2. Proveďte nezbytné importy modulů, které budete potřebovat později:

    import sempy.fabric as fabric
    
  3. Můžete se připojit k pracovnímu prostoru Power BI. Vypište sémantické modely v pracovním prostoru:

    fabric.list_datasets()
    
  4. Načtěte sémantický model. V tomto kurzu použijete sémantický model PBIX ukázky analýzy maloobchodního prodeje:

    dataset = "Retail Analysis Sample PBIX"
    

Výpis měr pracovního prostoru

Vypište míry v sémantickém modelu pomocí funkce SemPy list_measures následujícím způsobem:

fabric.list_measures(dataset)

Vyhodnocení měr

V této části vyhodnotíte míry různými způsoby pomocí funkce SemPy evaluate_measure .

Vyhodnocení nezpracované míry

V následujícím kódu použijte funkci SemPy evaluate_measure k výpočtu předkonfigurované míry, která se nazývá "Average Selling Area Size". Základní vzorec pro tuto míru si můžete prohlédnout ve výstupu předchozí buňky.

fabric.evaluate_measure(dataset, measure="Average Selling Area Size")

Vyhodnocení míry pomocí groupby_columns

Výstup míry můžete seskupit podle určitých sloupců zadáním dodatečného parametru groupby_columns:

fabric.evaluate_measure(dataset, measure="Average Selling Area Size", groupby_columns=["Store[Chain]", "Store[DistrictName]"])

V předchozím kódu jste seskupili sloupce Chain a DistrictName Store tabulku v sémantickém modelu.

Vyhodnocení míry pomocí filtrů

Parametr můžete použít filters také k určení konkrétních hodnot, které výsledek může obsahovat pro konkrétní sloupce:

fabric.evaluate_measure(dataset, \
                        measure="Total Units Last Year", \
                        groupby_columns=["Store[Territory]"], \
                        filters={"Store[Territory]": ["PA", "TN", "VA"], "Store[Chain]": ["Lindseys"]})

V předchozím kódu Store je název tabulky, Territory je název sloupce a PA je jednou z hodnot, které filtr povoluje.

Vyhodnocení míry napříč několika tabulkami

Míru můžete seskupit podle sloupců, které se v sémantickém modelu překrývají mezi více tabulkami.

fabric.evaluate_measure(dataset, measure="Total Units Last Year", groupby_columns=["Store[Territory]", "Sales[ItemID]"])

Vyhodnocení více měr

Funkce evaluate_measure umožňuje zadat identifikátory více měr a výstupem počítaných hodnot ve stejném datovém rámci:

fabric.evaluate_measure(dataset, measure=["Average Selling Area Size", "Total Stores"], groupby_columns=["Store[Chain]", "Store[DistrictName]"])

Použití konektoru XMLA Power BI

Výchozí klient sémantického modelu je založený na rozhraních REST API Power BI. Pokud dojde k problémům se spouštěním dotazů s tímto klientem, je možné přepnout back-end do rozhraní XMLA Power BI pomocí use_xmla=True. Parametry SemPy zůstávají stejné pro výpočet míry pomocí XMLA.

fabric.evaluate_measure(dataset, \
                        measure=["Average Selling Area Size", "Total Stores"], \
                        groupby_columns=["Store[Chain]", "Store[DistrictName]"], \
                        filters={"Store[Territory]": ["PA", "TN", "VA"], "Store[Chain]": ["Lindseys"]}, \
                        use_xmla=True)

Podívejte se na další kurzy pro sémantický odkaz / SemPy: