Eksplorowanie i weryfikowanie relacji w modelach semantycznych i ramkach danych
Z tego artykułu dowiesz się, jak używać funkcji linku semantycznego SemPy w celu odnajdywania i weryfikowania relacji w semantycznych modelach usługi Power BI i ramkach danych biblioteki pandas.
W nauce o danych i uczeniu maszynowym ważne jest zrozumienie struktury i relacji w danych. Usługa Power BI to zaawansowane narzędzie, które umożliwia modelowanie i wizualizowanie tych struktur i relacji. Aby uzyskać więcej szczegółowych informacji lub tworzyć modele uczenia maszynowego, możesz dokładniej poznać funkcje linku semantycznego w modułach biblioteki SemPy.
Analitycy danych i analitycy biznesowi mogą używać funkcji SemPy do wyświetlania, wizualizowania i weryfikowania relacji w modelach semantycznych usługi Power BI lub znajdowania i weryfikowania relacji w ramkach danych biblioteki pandas.
Wymagania wstępne
Uzyskaj subskrypcję usługi Microsoft Fabric. Możesz też utworzyć konto bezpłatnej wersji próbnej usługi Microsoft Fabric.
Zaloguj się do usługi Microsoft Fabric.
Użyj przełącznika środowiska po lewej stronie głównej, aby przełączyć się na środowisko usługi Synapse Nauka o danych.
Utwórz nowy notes , aby skopiować/wkleić kod do komórek.
W przypadku platformy Spark w wersji 3.4 lub nowszej link semantyczny jest dostępny w domyślnym środowisku uruchomieniowym podczas korzystania z sieci szkieletowej i nie ma potrzeby jej instalowania. W przypadku platformy Spark 3.3 lub nowszej albo zaktualizowania do najnowszej wersji linku semantycznego uruchom następujące polecenie:
%pip install -U semantic-link
Wyświetlanie listy relacji w modelach semantycznych
Funkcja list_relationships
w sempy.fabric
module zwraca listę wszystkich relacji znalezionych w modelu semantycznym usługi Power BI. Lista ułatwia zrozumienie struktury danych oraz sposobu łączenia różnych tabel i kolumn.
Ta funkcja działa przy użyciu linku semantycznego w celu zapewnienia adnotacji ramek danych. Ramki danych zawierają metadane niezbędne do zrozumienia relacji w modelu semantycznym. Anotowane ramki danych ułatwiają analizowanie struktury semantycznego modelu i używanie ich w modelach uczenia maszynowego lub innych zadaniach analizy danych.
Aby użyć list_relationships
funkcji, należy najpierw zaimportować sempy.fabric
moduł. Następnie wywołasz funkcję przy użyciu nazwy lub identyfikatora UUID modelu semantycznego usługi Power BI, jak pokazano w poniższym przykładzie:
import sempy.fabric as fabric
fabric.list_relationships("my_dataset")
Powyższy kod wywołuje list_relationships
funkcję z semantycznym modelem usługi Power BI o nazwie my_dataset. Funkcja zwraca ramkę danych biblioteki pandas z jednym wierszem na relację, umożliwiając łatwe eksplorowanie i analizowanie relacji w modelu semantycznym.
Uwaga
Notes, semantyczny model zestawu danych usługi Power BI i usługa Lakehouse mogą znajdować się w tym samym obszarze roboczym lub w różnych obszarach roboczych. Domyślnie program SemPy próbuje uzyskać dostęp do modelu semantycznego z:
- Obszar roboczy lakehouse, jeśli do notesu dołączono magazyn lakehouse.
- Obszar roboczy notesu, jeśli nie ma dołączonego magazynu lakehouse.
Jeśli model semantyczny nie znajduje się w jednym z tych obszarów roboczych, podczas wywoływania metody SemPy należy określić obszar roboczy modelu semantycznego.
Wizualizowanie relacji w modelach semantycznych
Funkcja plot_relationship_metadata
ułatwia wizualizowanie relacji w modelu semantycznym, dzięki czemu można lepiej zrozumieć strukturę modelu. Ta funkcja tworzy graf, który wyświetla połączenia między tabelami i kolumnami. Wykres ułatwia zrozumienie struktury semantycznego modelu i sposobu, w jaki są powiązane różne elementy.
W poniższym przykładzie pokazano, jak używać plot_relationship_metadata
funkcji:
import sempy.fabric as fabric
from sempy.relationships import plot_relationship_metadata
relationships = fabric.list_relationships("my_dataset")
plot_relationship_metadata(relationships)
W poprzednim kodzie list_relationships
funkcja pobiera relacje w modelu semantycznym my_dataset , a plot_relationship_metadata
funkcja tworzy graf w celu wizualizacji relacji.
Wykres można dostosować, definiując kolumny do uwzględnienia, określając sposób obsługi brakujących kluczy i zapewniając więcej atrybutów graphviz .
Weryfikowanie relacji w modelach semantycznych
Teraz, gdy masz lepsze zrozumienie relacji w modelu semantycznym, możesz użyć list_relationship_violations
funkcji do zweryfikowania tych relacji i zidentyfikowania potencjalnych problemów lub niespójności. Funkcja list_relationship_violations
pomaga zweryfikować zawartość tabel, aby upewnić się, że są one zgodne z relacjami zdefiniowanymi w modelu semantycznym.
Korzystając z tej funkcji, można zidentyfikować niespójności z określoną liczebnością relacji i rozwiązać wszelkie problemy przed ich wpływem na analizę danych lub modele uczenia maszynowego.
Aby użyć funkcji, najpierw zaimportuj list_relationship_violations
sempy.fabric
moduł i odczytaj tabele z modelu semantycznego.
Następnie wywołasz funkcję ze słownikiem, który mapuje nazwy tabel na ramki danych z zawartością tabeli.
Poniższy przykładowy kod pokazuje, jak wyświetlić listę naruszeń relacji:
import sempy.fabric as fabric
tables = {
"Sales": fabric.read_table("my_dataset", "Sales"),
"Products": fabric.read_table("my_dataset", "Products"),
"Customers": fabric.read_table("my_dataset", "Customers"),
}
fabric.list_relationship_violations(tables)
Powyższy kod wywołuje list_relationship_violations
funkcję ze słownikiem zawierającym tabele Sales, Products i Customers z modelu semantycznego my_dataset. Funkcję można dostosować, ustawiając próg pokrycia, określając sposób obsługi brakujących kluczy i definiując liczbę brakujących kluczy do raportowania.
Funkcja zwraca ramkę danych pandas z jednym wierszem na naruszenie relacji, co umożliwia łatwe identyfikowanie i rozwiązywanie wszelkich problemów w modelu semantycznym.
Korzystając z list_relationship_violations
funkcji, możesz upewnić się, że model semantyczny jest spójny i dokładny, co umożliwia tworzenie bardziej niezawodnych modeli uczenia maszynowego i uzyskiwanie dokładniejszego wglądu w dane.
Znajdowanie relacji w ramkach danych biblioteki pandas
Chociaż funkcje i list_relationship_violations
w module Sieć szkieletowa list_relationships
plot_relationships_df
są zaawansowanymi narzędziami do eksplorowania relacji w modelach semantycznych, może być również konieczne odnajdywanie relacji w innych źródłach danych zaimportowanych jako ramki danych pandas.
Jest to miejsce, w którym find_relationships
funkcja w sempy.relationship
module wchodzi w grę.
Funkcja find_relationships
w sempy.relationships
module ułatwia analitykom danych i analitykom biznesowym odnajdywanie potencjalnych relacji na liście ramek danych biblioteki pandas. Korzystając z tej funkcji, można zidentyfikować możliwe połączenia między tabelami i kolumnami, co pozwala lepiej zrozumieć strukturę danych i sposób, w jaki są powiązane różne elementy.
Poniższy przykładowy kod pokazuje, jak znaleźć relacje w ramkach danych biblioteki pandas:
from sempy.relationships import find_relationships
tables = [df_sales, df_products, df_customers]
find_relationships(tables)
Powyższy kod wywołuje find_relationships
funkcję z listą trzech ramek danych Biblioteki Pandas: df_sales
, df_products
i df_customers
.
Funkcja zwraca ramkę danych biblioteki pandas z jednym wierszem na potencjalną relację, umożliwiając łatwe eksplorowanie i analizowanie relacji w danych.
Funkcję można dostosować, określając próg pokrycia, próg podobieństwa nazwy, listę relacji do wykluczenia i czy należy uwzględnić relacje wiele-do-wielu.
Weryfikowanie relacji w ramkach danych biblioteki pandas
Po odnalezieniu find_relationships
potencjalnych relacji w ramkach danych biblioteki pandas przy użyciu funkcji można użyć list_relationship_violations
tej funkcji, aby zweryfikować te relacje i zidentyfikować potencjalne problemy lub niespójności.
Funkcja list_relationship_violations
weryfikuje zawartość tabel, aby upewnić się, że są one zgodne z odnalezionymi relacjami. Korzystając z tej funkcji do identyfikowania niespójności z określoną liczebnością relacji, można rozwiązać wszelkie problemy, zanim będą miały wpływ na analizę danych lub modele uczenia maszynowego.
Poniższy przykładowy kod pokazuje, jak znaleźć naruszenia relacji w ramkach danych biblioteki pandas:
from sempy.relationships import find_relationships, list_relationship_violations
tables = [df_sales, df_products, df_customers]
relationships = find_relationships(tables)
list_relationship_violations(tables, relationships)
Powyższy kod wywołuje list_relationship_violations
funkcję z listą trzech ramek danych pandas, df_sales
, df_products
i df_customers
, oraz relacje DataFrame z find_relationships
funkcji .
Funkcja list_relationship_violations
zwraca ramkę danych biblioteki pandas z jednym wierszem na naruszenie relacji, co pozwala łatwo identyfikować i rozwiązywać wszelkie problemy w danych.
Funkcję można dostosować, ustawiając próg pokrycia, określając sposób obsługi brakujących kluczy i definiując liczbę brakujących kluczy do raportowania.
Korzystając z list_relationship_violations
funkcji z ramkami danych biblioteki pandas, możesz zapewnić spójność i dokładność danych, umożliwiając tworzenie bardziej niezawodnych modeli uczenia maszynowego i uzyskiwanie bardziej szczegółowych informacji na temat danych.
Powiązana zawartość
- Dowiedz się więcej o funkcjach semantycznych
- Wprowadzenie do dokumentacji referencyjnej oprogramowania SemPy
- Samouczek: odnajdywanie relacji w modelu semantycznym przy użyciu linku semantycznego
- Samouczek: odnajdywanie relacji w zestawie danych Synthea przy użyciu linku semantycznego
- Wykrywanie, eksplorowanie i weryfikowanie zależności funkcjonalnych w danych