สํารวจและตรวจสอบความสัมพันธ์ในแบบจําลองความหมายและกรอบข้อมูล
ในบทความนี้ คุณจะได้เรียนรู้วิธีการใช้ฟังก์ชันลิงก์ความหมาย SemPy เพื่อค้นหาและตรวจสอบความสัมพันธ์ในแบบจําลองความหมายของ Power BI และ pandas DataFrames ของคุณ
ในวิทยาศาสตร์ข้อมูลและการเรียนรู้ของเครื่อง เป็นสิ่งสําคัญที่ต้องทําความเข้าใจโครงสร้างและความสัมพันธ์ภายในข้อมูลของคุณ Power BI เป็นเครื่องมือที่มีประสิทธิภาพที่ช่วยให้คุณสามารถจําลองและแสดงภาพโครงสร้างและความสัมพันธ์เหล่านี้ได้ หากต้องการรับข้อมูลเชิงลึกเพิ่มเติมหรือสร้างแบบจําลองการเรียนรู้ของเครื่อง คุณสามารถเจาะลึกลงไปได้โดยใช้ฟังก์ชันลิงก์ความหมายในโมดูลไลบรารี SemPy
นักวิทยาศาสตร์ข้อมูลและนักวิเคราะห์ธุรกิจสามารถใช้ฟังก์ชัน SemPy เพื่อแสดงรายการ แสดงภาพ และตรวจสอบความสัมพันธ์ในแบบจําลองความหมายของ Power BI หรือค้นหาและตรวจสอบความสัมพันธ์ใน pandas DataFrames ได้
ข้อกำหนดเบื้องต้น
รับการสมัครใช้งาน Microsoft Fabric หรือลงทะเบียนเพื่อทดลองใช้งาน Microsoft Fabric ฟรี
ลงชื่อเข้าใช้ Microsoft Fabric
ใช้ตัวสลับประสบการณ์ทางด้านซ้ายของโฮมเพจของคุณเพื่อสลับไปยังประสบการณ์วิทยาศาสตร์ข้อมูล Synapse
สร้าง สมุดบันทึก ใหม่เพื่อคัดลอก/วางรหัสลงในเซลล์
สําหรับ Spark 3.4 และสูงกว่า ลิงก์เชิงความหมายจะพร้อมใช้งานในรันไทม์เริ่มต้นเมื่อใช้ Fabric และไม่จําเป็นต้องติดตั้ง สําหรับ Spark 3.3 หรือด้านล่าง หรือเมื่อต้องการอัปเดตเป็นลิงก์เชิงความหมายเวอร์ชันล่าสุด ให้เรียกใช้คําสั่งต่อไปนี้:
%pip install -U semantic-link
แสดงรายการความสัมพันธ์ในแบบจําลองความหมาย
ฟังก์ชัน list_relationships
ใน sempy.fabric
โมดูลจะแสดงรายการของความสัมพันธ์ทั้งหมดที่พบในแบบจําลองความหมายของ Power BI รายการช่วยให้คุณเข้าใจโครงสร้างของข้อมูลของคุณและวิธีการเชื่อมต่อตารางและคอลัมน์ที่แตกต่างกัน
ฟังก์ชันนี้ทํางานโดยใช้ลิงก์เชิงความหมายเพื่อให้มีคําอธิบายประกอบ DataFrames DataFrames มีเมตาดาต้าที่จําเป็นเพื่อทําความเข้าใจความสัมพันธ์ภายในแบบจําลองความหมาย DataFrame ที่มีคําอธิบายประกอบทําให้ง่ายต่อการวิเคราะห์โครงสร้างของแบบจําลองเชิงความหมายและใช้ในรูปแบบการเรียนรู้ของเครื่องหรืองานการวิเคราะห์ข้อมูลอื่น ๆ
เมื่อต้องการใช้ list_relationships
ฟังก์ชัน คุณต้องนําเข้า sempy.fabric
โมดูล ก่อน จากนั้นคุณเรียกใช้ฟังก์ชันโดยใช้ชื่อหรือ UUID ของแบบจําลองความหมาย Power BI ของคุณ ดังที่แสดงในตัวอย่างต่อไปนี้:
import sempy.fabric as fabric
fabric.list_relationships("my_dataset")
โค้ดก่อนหน้านี้เรียกใช้list_relationships
ฟังก์ชัน ด้วยแบบจําลองความหมาย Power BI ที่เรียกว่า my_dataset ฟังก์ชันจะส่งกลับ DataFrame ของ pandas ที่มีหนึ่งแถวต่อความสัมพันธ์ ซึ่งช่วยให้คุณสามารถสํารวจและวิเคราะห์ความสัมพันธ์ภายในแบบจําลองความหมายได้อย่างง่ายดาย
หมายเหตุ
สมุดบันทึก แบบจําลองความหมายของชุดข้อมูล Power BI และ เลคเฮ้าส์ ของคุณสามารถอยู่ในพื้นที่ทํางานเดียวกันหรือในพื้นที่ทํางานที่แตกต่างกันได้ ตามค่าเริ่มต้น SemPy พยายามเข้าถึงแบบจําลองความหมายของคุณจาก:
- พื้นที่ทํางานของเลคเฮ้าส์หากคุณแนบเลคเฮาส์เข้ากับโน้ตบุ๊คของคุณ
- พื้นที่ทํางานของสมุดบันทึกของคุณ ถ้าไม่มีเลคเฮาส์ติดอยู่
หากแบบจําลองความหมายของคุณไม่อยู่ในพื้นที่ทํางานเหล่านี้ คุณต้องระบุพื้นที่ทํางานของแบบจําลองความหมายของคุณเมื่อคุณเรียกใช้เมธอด SemPy
แสดงภาพความสัมพันธ์ในแบบจําลองความหมาย
ฟังก์ชัน plot_relationship_metadata
นี้ช่วยให้คุณสามารถแสดงภาพความสัมพันธ์ในแบบจําลองเชิงความหมายเพื่อให้คุณสามารถทําความเข้าใจโครงสร้างของแบบจําลองได้ดียิ่งขึ้น ฟังก์ชันนี้สร้างกราฟที่แสดงการเชื่อมต่อระหว่างตารางและคอลัมน์ กราฟทําให้ง่ายต่อการทําความเข้าใจโครงสร้างของแบบจําลองความหมายและความสัมพันธ์ขององค์ประกอบที่แตกต่างกัน
ตัวอย่างต่อไปนี้แสดงวิธีการใช้ plot_relationship_metadata
ฟังก์ชัน:
import sempy.fabric as fabric
from sempy.relationships import plot_relationship_metadata
relationships = fabric.list_relationships("my_dataset")
plot_relationship_metadata(relationships)
ในโค้ดก่อนหน้า ฟังก์ชันจะ list_relationships
เรียกใช้ความสัมพันธ์ใน แบบจําลองความหมาย my_dataset และ plot_relationship_metadata
ฟังก์ชันจะสร้างกราฟเพื่อแสดงภาพความสัมพันธ์
คุณสามารถปรับแต่งกราฟโดยการกําหนดคอลัมน์ที่จะรวม ระบุวิธีการจัดการคีย์ที่ขาดหายไป และให้แอตทริบิวต์ graphviz ได้มากขึ้น
ตรวจสอบความถูกต้องของความสัมพันธ์ในแบบจําลองความหมาย
หลังจากที่คุณมีความเข้าใจที่ดีขึ้นเกี่ยวกับความสัมพันธ์ในแบบจําลองความหมายของคุณ คุณสามารถใช้ list_relationship_violations
ฟังก์ชันเพื่อตรวจสอบความสัมพันธ์เหล่านี้และระบุปัญหาหรือความไม่สอดคล้องกันที่อาจเกิดขึ้นได้ ฟังก์ชัน list_relationship_violations
นี้ช่วยให้คุณตรวจสอบความถูกต้องของตารางของคุณเพื่อให้แน่ใจว่าตรงกับความสัมพันธ์ที่กําหนดไว้ในแบบจําลองความหมายของคุณ
ด้วยการใช้ฟังก์ชันนี้ คุณสามารถระบุความไม่สอดคล้องกับความคูณของความสัมพันธ์ที่ระบุและแก้ไขปัญหาใด ๆ ก่อนที่จะส่งผลกระทบต่อการวิเคราะห์ข้อมูลหรือแบบจําลองการเรียนรู้ของเครื่อง
หากต้องการใช้ list_relationship_violations
ฟังก์ชัน ก่อนอื่นคุณต้องนําเข้า sempy.fabric
โมดูลและอ่านตารางจากแบบจําลองความหมายของคุณ
จากนั้น คุณเรียกใช้ฟังก์ชันด้วยพจนานุกรมที่แมปชื่อตารางไปยัง DataFrames ด้วยเนื้อหาของตาราง
รหัสตัวอย่างต่อไปนี้แสดงวิธีการแสดงรายการการละเมิดความสัมพันธ์:
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)
รหัสก่อนหน้านี้เรียกใช้list_relationship_violations
ฟังก์ชัน ด้วยพจนานุกรมที่ประกอบด้วยตารางยอดขาย ผลิตภัณฑ์ และลูกค้าจากแบบจําลองความหมาย my_dataset คุณสามารถกําหนดฟังก์ชันโดยการตั้งค่าขีดจํากัดความครอบคลุม ระบุวิธีการจัดการคีย์ที่ขาดหายไป และกําหนดจํานวนคีย์ที่ขาดหายไปในรายงานได้
ฟังก์ชันส่งกลับ pandas DataFrame ที่มีหนึ่งแถวต่อการละเมิดความสัมพันธ์ ซึ่งช่วยให้คุณสามารถระบุและแก้ไขปัญหาใด ๆ ภายในแบบจําลองความหมายของคุณได้อย่างง่ายดาย
เมื่อใช้ฟังก์ชัน นี้ คุณสามารถมั่นใจได้ว่าแบบจําลองความหมายของคุณมีความสอดคล้องและแม่นยํา ช่วยให้คุณสามารถสร้างแบบจําลองการเรียนรู้ของ list_relationship_violations
เครื่องที่เชื่อถือได้มากขึ้นและรับข้อมูลเชิงลึกมากขึ้นในข้อมูลของคุณ
ค้นหาความสัมพันธ์ใน DataFrames ของ pandas
list_relationships
ในขณะที่ฟังก์ชัน , plot_relationships_df
และ list_relationship_violations
ในโมดูล Fabric เป็นเครื่องมือที่มีประสิทธิภาพสําหรับการสํารวจความสัมพันธ์ภายในแบบจําลองความหมาย คุณยังอาจจําเป็นต้องค้นหาความสัมพันธ์ภายในแหล่งข้อมูลอื่น ๆ ที่นําเข้าเป็น pandas DataFrames
นี่คือที่มาของ find_relationships
ฟังก์ชันใน sempy.relationship
โมดูล
ฟังก์ชัน find_relationships
ใน sempy.relationships
โมดูลช่วยให้นักวิทยาศาสตร์ข้อมูลและนักวิเคราะห์ธุรกิจค้นพบความสัมพันธ์ที่อาจเกิดขึ้นภายในรายการของ pandas DataFrames เมื่อใช้ฟังก์ชันนี้ คุณจะสามารถระบุการเชื่อมต่อที่เป็นไปได้ระหว่างตารางและคอลัมน์ ซึ่งช่วยให้คุณเข้าใจโครงสร้างของข้อมูลของคุณและความสัมพันธ์ขององค์ประกอบที่แตกต่างกันได้ดียิ่งขึ้น
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการค้นหาความสัมพันธ์ใน DataFrame ของ pandas:
from sempy.relationships import find_relationships
tables = [df_sales, df_products, df_customers]
find_relationships(tables)
โค้ดก่อนหน้านี้จะเรียกใช้find_relationships
ฟังก์ชัน ที่มีรายการ Pandas DataFrames สามรายการ: df_sales
, df_products
และdf_customers
ฟังก์ชันจะส่งกลับ DataFrame ของ pandas ที่มีหนึ่งแถวต่อความสัมพันธ์ที่เป็นไปได้ ซึ่งช่วยให้คุณสามารถสํารวจและวิเคราะห์ความสัมพันธ์ภายในข้อมูลของคุณได้อย่างง่ายดาย
คุณสามารถกําหนดฟังก์ชันโดยการระบุขีดจํากัดความครอบคลุม ค่าเกณฑ์ความคล้ายคลึงกันของชื่อ รายการความสัมพันธ์ที่จะแยกออก และจะรวมความสัมพันธ์แบบกลุ่มต่อกลุ่มหรือไม่
ตรวจสอบความสัมพันธ์ใน DataFrames ของ pandas
หลังจากที่คุณค้นพบความสัมพันธ์ที่อาจเกิดขึ้นใน DataFrame ของ pandas ของคุณโดยใช้ find_relationships
ฟังก์ชัน คุณสามารถใช้ list_relationship_violations
ฟังก์ชันเพื่อตรวจสอบความสัมพันธ์เหล่านี้และระบุปัญหาหรือความไม่สอดคล้องกันที่อาจเกิดขึ้นได้
ฟังก์ชัน list_relationship_violations
จะตรวจสอบเนื้อหาของตารางของคุณเพื่อให้แน่ใจว่าตรงกับความสัมพันธ์ที่ค้นพบ ด้วยการใช้ฟังก์ชันนี้เพื่อระบุความไม่สอดคล้องกับความคูณของความสัมพันธ์ที่ระบุ คุณสามารถแก้ไขปัญหาใด ๆ ก่อนที่จะส่งผลกระทบต่อการวิเคราะห์ข้อมูลหรือแบบจําลองการเรียนรู้ของเครื่อง
รหัสตัวอย่างต่อไปนี้แสดงวิธีการค้นหาการละเมิดความสัมพันธ์ใน DataFrame ของ 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)
โค้ดก่อนหน้าจะlist_relationship_violations
เรียกใช้ฟังก์ชัน ที่มีรายการของ Pandas DataFrames สามdf_products
df_sales
รายการ, , และ df_customers
บวกความสัมพันธ์ DataFrame จากfind_relationships
ฟังก์ชัน
ฟังก์ชัน list_relationship_violations
จะส่งกลับ pandas DataFrame ที่มีหนึ่งแถวต่อการละเมิดความสัมพันธ์ ซึ่งช่วยให้คุณสามารถระบุและแก้ไขปัญหาใด ๆ ภายในข้อมูลของคุณได้อย่างง่ายดาย
คุณสามารถกําหนดฟังก์ชันโดยการตั้งค่าขีดจํากัดความครอบคลุม ระบุวิธีการจัดการคีย์ที่ขาดหายไป และกําหนดจํานวนคีย์ที่ขาดหายไปในรายงานได้
ด้วยการใช้ list_relationship_violations
ฟังก์ชันกับ pandas DataFrames คุณสามารถมั่นใจได้ว่าข้อมูลของคุณมีความแม่นยําและแม่นยําช่วยให้คุณสามารถสร้างแบบจําลองการเรียนรู้ของเครื่องที่เชื่อถือได้มากขึ้นและรับข้อมูลเชิงลึกมากขึ้นในข้อมูลของคุณ