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 trybu w lewej dolnej części strony głównej, aby przełączyć się na Fabric.
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_relationships
w module Sieć szkieletowa plot_relationships_df
list_relationship_violations
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