Oktatóanyag: Power BI-mértékek kinyerása és kiszámítása Jupyter-jegyzetfüzetből
Ez az oktatóanyag bemutatja, hogyan használható a SemPy (előzetes verzió) a szemantikai modellekben (Power BI-adathalmazokban) lévő mértékek kiszámítására.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- A Power BI-mértékek programozott kiértékelése a szemantikai hivatkozás Python-kódtárának (SemPy) Python-felületén keresztül.
- Ismerkedjen meg a SemPy azon összetevőivel, amelyek segítenek áthidalni az AI és a BI közötti szakadékot. Ezek az összetevők a következők:
- FabricDataFrame – egy pandas-szerű struktúra, amely további szemantikai információkkal bővül.
- Hasznos függvények, amelyek lehetővé teszik szemantikai modellek, például nyers adatok, konfigurációk és mértékek lekérését.
Előfeltételek
Microsoft Fabric-előfizetés lekérése. Vagy regisztráljon egy ingyenes Microsoft Fabric-próbaverzióra.
A kezdőlap bal oldalán található élménykapcsolóval válthat a Synapse Adattudomány felületre.
A munkaterület megkereséséhez és kijelöléséhez válassza a bal oldali navigációs panel munkaterületeit. Ez a munkaterület lesz az aktuális munkaterület.
Töltse le a kiskereskedelmi elemzési minta PBIX.pbix szemantikai modelljét, és töltse fel a munkaterületre.
Követés a jegyzetfüzetben
Az oktatóanyaghoz a powerbi_measures_tutorial.ipynb jegyzetfüzet is hozzá van kísérve.
Az oktatóanyaghoz mellékelt jegyzetfüzet megnyitásához kövesse a Rendszer előkészítése adatelemzési oktatóanyagokhoz című témakör utasításait, és importálja a jegyzetfüzetet a munkaterületre.
Ha inkább erről a lapról másolja és illessze be a kódot, létrehozhat egy új jegyzetfüzetet.
A kód futtatása előtt mindenképpen csatoljon egy lakehouse-t a jegyzetfüzethez .
A jegyzetfüzet beállítása
Ebben a szakaszban egy jegyzetfüzet-környezetet állít be a szükséges modulokkal és adatokkal.
Telepítés
SemPy
a PyPI-ból a%pip
jegyzetfüzeten belüli helyszíni telepítési funkcióval:%pip install semantic-link
Végezze el a szükséges modulok importálását, amelyekre később szüksége lesz:
import sempy.fabric as fabric
Csatlakozhat a Power BI-munkaterülethez. Sorolja fel a szemantikai modelleket a munkaterületen:
fabric.list_datasets()
Töltse be a szemantikai modellt. Ebben az oktatóanyagban a kiskereskedelmi elemzési minta PBIX szemantikai modelljét használja:
dataset = "Retail Analysis Sample PBIX"
Munkaterületi mértékek listázása
Listázzon mértékeket a szemantikai modellben a SemPy függvényének list_measures
használatával az alábbiak szerint:
fabric.list_measures(dataset)
Mértékek kiértékelése
Ebben a szakaszban különböző módokon értékeli ki a mértékeket a SemPy függvényével evaluate_measure
.
Nyers mérték kiértékelése
Az alábbi kódban a SemPy függvényével evaluate_measure
kiszámíthat egy előre konfigurált mértéket, amelynek neve "Átlagos értékesítési területméret". A mérték alapjául szolgáló képlet az előző cella kimenetében látható.
fabric.evaluate_measure(dataset, measure="Average Selling Area Size")
Mérték kiértékelése groupby_columns
A mérték kimenetét egyes oszlopok szerint csoportosíthatja a további paraméter groupby_columns
megadásával:
fabric.evaluate_measure(dataset, measure="Average Selling Area Size", groupby_columns=["Store[Chain]", "Store[DistrictName]"])
Az előző kódban a szemantikai modell oszlopai Chain
és DistrictName
táblázatai Store
szerint csoportosítottuk.
Mérték kiértékelése szűrőkkel
A paraméter használatával filters
meghatározott értékeket is megadhat, amelyeket az eredmény adott oszlopokhoz tartalmazhat:
fabric.evaluate_measure(dataset, \
measure="Total Units Last Year", \
groupby_columns=["Store[Territory]"], \
filters={"Store[Territory]": ["PA", "TN", "VA"], "Store[Chain]": ["Lindseys"]})
Az előző kódban Store
a tábla neve, Territory
az oszlop neve, és PA
a szűrő által megadott értékek egyike.
Mérték kiértékelése több táblában
A mértéket a szemantikai modellben több táblára kiterjedő oszlopok szerint csoportosíthatja.
fabric.evaluate_measure(dataset, measure="Total Units Last Year", groupby_columns=["Store[Territory]", "Sales[ItemID]"])
Több mérték kiértékelése
A függvény evaluate_measure
lehetővé teszi több mérték azonosítóinak megadását és a számított értékek kimenetét ugyanabban a DataFrame-ben:
fabric.evaluate_measure(dataset, measure=["Average Selling Area Size", "Total Stores"], groupby_columns=["Store[Chain]", "Store[DistrictName]"])
A Power BI XMLA-összekötő használata
Az alapértelmezett szemantikai modellügyfélt a Power BI REST API-k végzik. Ha probléma merül fel a lekérdezések ezen ügyféllel való futtatásával kapcsolatban, a háttérrendszert a Power BI XMLA-felületére válthatja a használatával use_xmla=True
. A SemPy-paraméterek változatlanok maradnak az XMLA-val való mértékszámításhoz.
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)
Kapcsolódó tartalom
Tekintse meg a szemantikai hivatkozás / SemPy egyéb oktatóanyagait:
- Oktatóanyag: Adatok tisztítása funkcionális függőségekkel
- Oktatóanyag: Funkcionális függőségek elemzése szemantikai mintamodellben
- Oktatóanyag: Kapcsolatok felderítése szemantikai modellben szemantikai hivatkozás használatával
- Oktatóanyag: Kapcsolatok felderítése a Synthea-adathalmazban szemantikai hivatkozással (előzetes verzió)
- Oktatóanyag: Adatok ellenőrzése a SemPy és a Nagy elvárások (GX) használatával (előzetes verzió)