ใช้ Python ใน Power Query Editor

คุณสามารถใช้ Python ซึ่งเป็นภาษาการเขียนโปรแกรมที่นักสถิติ นักวิทยาศาสตร์ข้อมูล และนักวิเคราะห์ข้อมูลใช้กันอย่างกว้างขวาง ใน Power BI Desktop Power Query Editor การรวม Python ใน Power Query Editor ช่วยให้คุณดําเนินการทําความสะอาดข้อมูลโดยใช้ Python และดําเนินการวิเคราะห์และการจัดรูปทรงข้อมูลขั้นสูงในชุดข้อมูล รวมถึงการเติมเต็มข้อมูลที่คาดหาย การคาดการณ์ และการทําคลัสเตอร์ และอื่นๆ Python เป็นภาษาที่มีประสิทธิภาพ และสามารถใช้ได้ใน Power Query Editor เพื่อเตรียมแบบจําลองข้อมูลของคุณ และสร้างรายงาน

ติดตั้ง Python

หากต้องการใช้ Python ในตัว แก้ไข Power Query ของ Power BI Desktop คุณจําเป็นต้องติดตั้ง Python บนเครื่องคอมพิวเตอร์ของคุณ คุณสามารถดาวน์โหลดและติดตั้ง Python ได้ฟรีจากตำแหน่งที่ตั้งต่าง ๆ ซึ่งรวมถึงหน้าดาวน์โหลด Official Python และ Anaconda

การใช้ Python ใน Power Query Editor

เมื่อต้องการแสดงวิธีใช้ Python ใน Power Query Editor ให้นําตัวอย่างนี้จากชุดข้อมูลตลาดหุ้น โดยยึดตามไฟล์.CSVที่คุณสามารถ ดาวน์โหลดได้จากที่นี่ และทําตามไปด้วย ขั้นตอนสำหรับตัวอย่างนี้มีดังนี้:

  1. ก่อนอื่น โหลดข้อมูลของคุณลงใน Power BI Desktop ในตัวอย่างนี้ โหลดไฟล์EuStockMarkets_NA.csv และเลือกรับข้อมูล > ข้อความ/CSV จากริบบิ้นหน้าแรก ใน Power BI Desktop

    Screenshot of the Get Data ribbon in Power B I Desktop, showing the C S V selection.

  2. เลือกไฟล์ แล้วเลือกเปิดและ CSV จะแสดงในกล่องโต้ตอบไฟล์ CSV

    Screenshot of the C S V file dialog, showing the selected C S V.

  3. เมื่อข้อมูลถูกโหลด คุณจะเห็นข้อมูลในบานหน้าต่างเขตข้อมูลใน Power BI Desktop

    Screenshot of the Fields pane, showing the loaded data.

  4. เปิดตัวแก้ไข Power Query โดยการเลือก แปลงข้อมูลจากแท็บ หน้าแรก ใน Power BI Desktop

    Screenshot of the Power Query Editor in Power B I Desktop, showing the Transform data selection.

  5. ในแท็บ แปลง เลือก เรียกใช้สคริปต์ R และตัวแก้ไขเรียกใช้สคริปต์ Python จะปรากฏขึ้น (แสดงอยู่ในขั้นตอนถัดไป) โปรดสังเกตว่า แถว 15 และ 20 ไม่มีข้อมูลบางอย่าง และแถวอื่นๆ ก็ขาดข้อมูลบางอย่างที่คุณไม่สามารถมองเห็นในรูปต่อไปนี้ ขั้นตอนด้านล่างแสดงวิธีที่ Python สามารถ (และจะ) ใส่ข้อมูลในแถวเหล่านั้นให้สมบูรณ์

    Screenshot of the Transform tab, showing rows of data.

  6. สำหรับตัวอย่างนี้ ใส่รหัสสคริปต์ต่อไปนี้:

       import pandas as pd
       completedData = dataset.fillna(method='backfill', inplace=False)
       dataset["completedValues"] =  completedData["SMI missing values"]
    

    หมายเหตุ

    คุณจะต้องมีไลบรารี pandas ติดตั้งอยู่ในสภาพแวดล้อม Python เพื่อให้รหัสสคริปต์ก่อนหน้าทำงานอย่างถูกต้อง หากต้องการติดตั้ง pandas ให้เรียกใช้คําสั่งต่อไปนี้ในการติดตั้ง Python ของคุณ: | > ติดตั้ง pandas pip

    เมื่อวางรหัสลงในกล่องโต้ตอบ เรียกใช้สคริปต์ Python รหัสจะมีลักษณะดังต่อไปนี้:

    Screenshot of the Run Python Script dialog, showing the script code.

  7. หลังจากเลือก ตกลงตัวแก้ไข Power Query จะแสดงคําเตือนเกี่ยวกับความเป็นส่วนตัวของข้อมูล

    Screenshot of the Power Query Editor pane, showing the warning about data privacy.

  8. เพื่อให้สคริปต์ Python ทำงานอย่างถูกต้องในบริการของ Power BI คุณจำเป็นต้องตั้งค่าแหล่งข้อมูลทั้งหมดเป็น สาธารณะ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าความเป็นส่วนตัวและผลกระทบของการตั้งค่า ดูระดับความเป็นส่วนตัว

    Screenshot of the Privacy levels dialog, showing that Public is set.

    โปรดสังเกตคอลัมน์ใหม่ในบานหน้าต่างเขตข้อมูลที่เรียกว่า completedValues โปรดสังเกตว่า มีองค์ประกอบข้อมูลบางอย่างหายไป เช่น ในแถวที่ 15 และ 18 โปรดดูในส่วน วิธีการที่ Python จัดการเรื่องเหล่านั้นในหัวข้อถัดไป

ด้วยสคริปต์ Python เพียงห้าบรรทัด ตัวแก้ไข Power Query จะกรอกค่าที่หายไปด้วยแบบจําลองคาดการณ์

สร้างวิชวลจากข้อมูลสคริปต์ Python

ในตอนนี้ เราสามารถสร้างวิชวลเพื่อดูวิธีที่สคริปต์ Python ทำงานด้วยการใช้ไลบรารี pandas เติมค่าที่หายไป ดังที่แสดงในรูปต่อไปนี้:

Screenshot of the visual, showing original data and completed missing values of the pandas library.

เมื่อวิชวลดังกล่าวเสร็จสมบูรณ์ และภาพอื่นๆ ที่คุณอาจต้องการสร้างโดยใช้ Power BI Desktop คุณสามารถบันทึกไฟล์ของ Power BI Desktop (ซึ่งจะบันทึกเป็นไฟล์ .pbix) และจากนั้น ใช้แบบจำลองข้อมูลที่รวมถึงสคริปต์ Python ที่เป็นส่วนหนึ่งของแบบจำลองนั้นในบริการของ Power BI

หมายเหตุ

ต้องการดูไฟล์ .pbix ที่เสร็จสมบูรณ์ด้วยขั้นตอนเหล่านี้หรือไม่ คุณโชคดี - คุณสามารถดาวน์โหลดไฟล์ของ Power BI Desktop ที่เสร็จสมบูรณ์ในตัวอย่างเหล่านี้ที่นี่

เมื่อคุณอัปโหลดไฟล์ .pbix ไปยังบริการของ Power BI จำเป็นต้องทำขั้นตอนเพิ่มเติมเพื่อให้สามารถรีเฟรชข้อมูล (ในบริการ) และเพื่อให้ปรับปรุงภาพที่แสดงข้อมูลในบริการได้ (ข้อมูลต้องเข้าถึง Python เพื่อปรับปรุงการแสดงผลด้วยภาพ) ขั้นตอนเพิ่มเติมมีดังนี้:

  • เปิดใช้งานรีเฟรชชุดข้อมูลตามกำหนดการ - จะทำให้สคริปต์ Python รีเฟรชสมุดงานที่ประกอบด้วยชุดข้อมูลของคุณตามกำหนดการ ดูตั้งค่าการรีเฟรชตามกำหนดการซึ่งยังรวมถึงข้อมูลเกี่ยวกับเกตเวย์ส่วนบุคคล
  • ติดตั้งเกตเวย์ส่วนบุคคล - คุณจำเป็นต้องติดตั้งเกตเวย์ส่วนบุคคลบนเครื่องที่มีไฟล์อยู่ และซึ่งมีการติดตั้ง Python บริการของ Power BI ต้องเข้าถึงสมุดงานนั้นและแสดงภาพที่ได้รับการปรับปรุงแล้ว คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับวิธีการติดตั้งและกำหนดค่าเกตเวย์ส่วนบุคคลได้

ข้อควรพิจารณาและข้อจำกัด

มีข้อจํากัดบางอย่างของการคิวรีและสคริปต์ Python ที่ถูกสร้างขึ้นใน Power Query Editor:

  • ต้องตั้งค่าแหล่งข้อมูล Python ทั้งหมดเป็น สาธารณะและขั้นตอนอื่นๆ ทั้งหมดในคิวรีที่ถูกสร้างขึ้นใน Power Query Editor ต้องเป็นสาธารณะด้วย เมื่อต้องการตั้งค่าแหล่งข้อมูล ใน Power BI Desktop เลือกไฟล์ > ตัวเลือกและการตั้งค่า > การตั้งค่าแหล่งข้อมูล

    Screenshot of the File menu in Power B I Desktop, showing the Data source settings selection.

    จากกล่องโต้ตอบการตั้งค่าแหล่งข้อมูล เลือกแหล่งข้อมูล และจากนั้น เลือกแก้ไขสิทธิ์... และกำหนดให้ระดับความเป็นส่วนตัวถูกตั้งค่าเป็นสาธารณะ

    Screenshot of the Data source settings dialog, showing the Privacy Level is set to Public.

  • เมื่อต้องการรีเฟรชการแสดงผลด้วยวิชวล Python หรือชุดข้อมูลของคุณตามกำหนดการ คุณจำเป็นต้องเปิดใช้งานรีเฟรชตามกำหนดการและมีเกตเวย์ส่วนบุคคลที่ติดตั้งบนคอมพิวเตอร์ที่บรรจุสมุดงานและมีการติดตั้ง Python สำหรับข้อมูลเพิ่มเติมในทั้งสองเรื่อง ดูหัวข้อก่อนหน้าในบทความนี้ ซึ่งมีลิงก์เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้แต่ละเรื่อง

  • ในขณะนี้ไม่รองรับตารางที่ซ้อนกัน (ตารางของตาราง)

มีวิธีการต่างๆ ที่คุณสามารถทำได้ด้วย Python และคิวรีแบบกำหนดเอง ดังนั้น คุณควรสำรวจและจัดรูปแบบข้อมูลของคุณอย่างที่คุณต้องการให้ปรากฏ