Sdílet prostřednictvím


Extrahování 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 Power BI.

V tomto kurzu se naučíte:

  • Vyhodnocení měr Power BI prostřednictvím kódu programu pomocí rozhraní Pythonu knihovny sémantických odkazů (SemPy)
  • Seznamte se s komponentami SemPy, které pomáhají přemostění umělé inteligence a BI:
    • FabricDataFrame – struktura podobná knihovně pandas vylepšená sémantickými informacemi
    • Funkce, které získávají sémantické modely, včetně nezpracovaných dat, konfigurací a měr

Požadavky

  • V navigačním podokně vyberte Pracovní prostory a pak ho vyberte a nastavte ho jako aktuální pracovní prostor.

  • 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 .

Nastavení poznámkového bloku

V této části nastavíte prostředí poznámkového bloku.

  1. Nainstalujte SemPy z PyPI pomocí %pip vloženého v poznámkovém bloku.

    %pip install semantic-link-sempy
    
  2. Importujte moduly, které použijete později.

    import sempy.fabric as fabric
    
  3. Připojte se k pracovnímu prostoru Power BI a vypište v pracovním prostoru sémantické modely.

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

    dataset = "Retail Analysis Sample"
    
    dataset = "Retail Analysis Sample PBIX"
    

Výpis měr pracovního prostoru

Pomocí semPy můžete vypsat list_measures míry v sémantickém modelu:

fabric.list_measures(dataset)

Vyhodnocení měr

Pomocí funkce SemPy evaluate_measure můžete vyhodnotit míry různými způsoby.

Vyhodnocení nezpracované míry

K výpočtu předkonfigurované míry s názvem Average Selling Area Size použijte funkci SemPy evaluate_measure .

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

Vyhodnocení míry pomocí groupby_columns

Seskupte výsledek podle sloupců pomocí parametru groupby_columns :

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

Tento kód seskupí podle Store[Chain] a Store[DistrictName].

Vyhodnocení míry pomocí filtrů

Pomocí parametru filters omezte výsledky na konkrétní hodnoty sloupců:

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

V tomto příkladu Store je tabulka, Territory je sloupec a PA je to povolená hodnota.

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

Seskupování podle sloupců napříč více tabulkami v sémantickém modelu

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 více identifikátorů měr a vrátí počítané hodnoty v jednom DataFrame:

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

Použijte konektor XMLA Power BI

Výchozí klient sémantického modelu používá rozhraní REST API Power BI. Pokud dotazy s tímto klientem selžou, přepněte na koncový bod XMLA Power BI nastavením use_xmla=True. Parametry SemPy jsou stejné pro výpočty měr 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ší sémantické odkazy a kurzy k SemPy: