รวมไฟล์ CSV
ใน Power Query คุณสามารถรวมหลายไฟล์จากแหล่งข้อมูลที่ระบุได้ บทความนี้อธิบายวิธีการทํางานเมื่อไฟล์ที่คุณต้องการรวมเป็นไฟล์ CSV ข้อมูลเพิ่มเติม: ภาพรวมรวมไฟล์
เคล็ดลับ
คุณสามารถทําตามตัวอย่างนี้ โดยการดาวน์โหลดไฟล์ตัวอย่างที่ใช้ในบทความนี้จาก ลิงก์ดาวน์โหลดนี้ คุณสามารถวางไฟล์เหล่านั้นในแหล่งข้อมูลที่คุณเลือก เช่น โฟลเดอร์ภายในเครื่อง, โฟลเดอร์ SharePoint, ที่เก็บข้อมูล Azure Blob, Azure Data Lake Storage หรือแหล่งข้อมูลอื่น ๆ ที่มีมุมมองระบบไฟล์
เพื่อความง่าย ตัวอย่างในบทความนี้ใช้ตัวเชื่อมต่อโฟลเดอร์ ข้อมูลเพิ่มเติม: โฟลเดอร์
เกี่ยวกับไฟล์ตัวอย่างที่ใช้
ในการรวมไฟล์ จําเป็นต้องให้ไฟล์ทั้งหมดมีโครงสร้างเดียวกันและส่วนขยายเดียวกัน ไฟล์ทั้งหมดที่ใช้ในตัวอย่างนี้มีโครงสร้างและส่วนขยายเดียวกัน (.csv)
มีไฟล์ CSV 12 ไฟล์ หนึ่งไฟล์สําหรับแต่ละเดือนของปีปฏิทิน 2019 รูปภาพต่อไปนี้แสดง 15 แถวแรกของไฟล์สําหรับเดือนมกราคม
จํานวนแถวแตกต่างกันไปในแต่ละไฟล์ แต่ไฟล์ทั้งหมดมีส่วนหัวในสี่แถวแรก คอลัมน์มีส่วนหัวของคอลัมน์ในแถวที่ห้า และข้อมูลสําหรับตารางจะเริ่มต้นในแถวที่หกและดําเนินการต่อผ่านแถวถัดไปทั้งหมด
เป้าหมายคือการรวมไฟล์ทั้ง 12 ไฟล์ลงในตารางเดียว ตารางรวมนี้ประกอบด้วยแถวส่วนหัวที่ด้านบนของตาราง และรวมถึงชื่อแหล่งที่มา วันที่ ประเทศ หน่วย และข้อมูลรายได้สําหรับทั้งปีในคอลัมน์แยกต่างหากหลังจากแถวส่วนหัว
การแสดงตัวอย่างตาราง
เมื่อเชื่อมต่อกับโฟลเดอร์ที่โฮสต์ไฟล์ที่คุณต้องการรวมในตัวอย่างนี้ ชื่อของโฟลเดอร์นั้นคือ ไฟล์ CSV คุณจะเห็นกล่องโต้ตอบแสดงตัวอย่างตาราง ซึ่งแสดงเส้นทางโฟลเดอร์ของคุณในมุมบนซ้าย ตัวอย่างข้อมูลแสดงมุมมองระบบไฟล์
สําหรับตัวอย่างนี้ เลือกรวม
หมายเหตุ
ในสถานการณ์อื่น คุณอาจเลือก แปลงข้อมูล เพื่อกรองและแปลงข้อมูลของคุณเพิ่มเติมก่อนที่จะรวมไฟล์ การเลือกรวมจะแนะนําเฉพาะเมื่อคุณแน่ใจว่าโฟลเดอร์มีเฉพาะไฟล์ที่คุณต้องการรวมเท่านั้น
กล่องโต้ตอบรวมไฟล์
หลังจากที่คุณเลือกรวมในตัวอย่างตาราง กล่องโต้ตอบรวมไฟล์จะปรากฏขึ้น
หมายเหตุ
Power Query จะตรวจหาตัวเชื่อมต่อที่จะใช้โดยอัตโนมัติโดยยึดตามไฟล์แรกที่พบในรายการ เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับตัวเชื่อมต่อ CSV ไปที่ข้อความ/CSV
สําหรับตัวอย่างนี้ ปล่อยการตั้งค่าเริ่มต้นทั้งหมดไว้ (ไฟล์ตัวอย่างถูกตั้งค่าเป็น ไฟล์แรก และค่าเริ่มต้นสําหรับจุดเริ่มต้นของไฟล์ ตัวคั่น และการตรวจหาชนิดข้อมูล)
ตอนนี้ เลือก แปลงข้อมูล ในมุมล่างขวาเพื่อไปยังคิวรีผลลัพธ์
คิวรีผลลัพธ์
หลังจากเลือกแปลงข้อมูลในกล่องโต้ตอบรวมไฟล์แล้ว คุณจะถูกนํากลับไปยังตัวแก้ไข Power Query ในคิวรีที่คุณสร้างขึ้นเริ่มต้นจากการเชื่อมต่อไปยังโฟลเดอร์ภายในเครื่อง ขณะนี้คิวรีผลลัพธ์ประกอบด้วยชื่อไฟล์ต้นทางในคอลัมน์ซ้ายสุด พร้อมกับข้อมูลจากแต่ละไฟล์ต้นฉบับในคอลัมน์ที่เหลือ
อย่างไรก็ตาม ข้อมูลไม่ได้อยู่ในรูปร่างที่ถูกต้อง คุณจําเป็นต้องลบแถวที่ด้านบนสี่แถวออกจากแต่ละไฟล์ก่อนที่จะรวมเข้าด้วยกัน เมื่อต้องการทําการเปลี่ยนแปลงนี้ในแต่ละไฟล์ก่อนที่คุณจะรวม เข้าด้วยกัน ให้เลือกคิวรี ไฟล์ตัวอย่าง ในบานหน้าต่าง คิวรี ทางด้านซ้ายของหน้าจอของคุณ
ปรับเปลี่ยนคิวรีไฟล์ตัวอย่างการแปลง
ในคิวรีไฟล์ตัวอย่างการแปลงนี้ ค่าในคอลัมน์ วันที่ ระบุว่าข้อมูลเป็นข้อมูลสําหรับเดือนเมษายน ซึ่งมีรูปแบบ year-month-day (YYYY-MM-DD) 2019.csv เดือนเมษายนเป็นไฟล์แรกที่แสดงในการแสดงตัวอย่างตาราง
ตอนนี้คุณจําเป็นต้องใช้ชุดการแปลงใหม่เพื่อล้างข้อมูล การแปลงแต่ละครั้งจะถูกแปลงเป็นฟังก์ชันภายใน กลุ่มคิวรี ตัวช่วยเหลือที่จะนําไปใช้กับทุกไฟล์ในโฟลเดอร์ก่อนที่จะรวมข้อมูลจากแต่ละไฟล์
การแปลงที่จําเป็นต้องเพิ่มลงใน คิวรีไฟล์ ตัวอย่างการแปลงเป็น:
ลบแถวบนสุด: หากต้องการดําเนินการนี้ ให้เลือกเมนูไอคอนตารางที่มุมซ้ายบนของตาราง จากนั้นเลือก ลบแถวด้านบน
ในกล่องโต้ตอบ ลบแถวบนสุด ให้ใส่ 4 จากนั้นเลือก ตกลง
หลังจากเลือก ตกลง ตารางของคุณจะไม่มีแถวบนสุดสี่แถวอีกต่อไป
ใช้แถวแรกเป็นส่วนหัว: เลือกไอคอนตารางอีกครั้ง จากนั้นเลือก ใช้แถวแรกเป็นส่วนหัว
ผลลัพธ์ของการดําเนินการนั้นจะเลื่อนระดับแถวแรกของตารางไปยังส่วนหัวของคอลัมน์ใหม่
หลังจากการดําเนินการนี้เสร็จสมบูรณ์ Power Query ตามค่าเริ่มต้นจะพยายามตรวจหาชนิดข้อมูลของคอลัมน์โดยอัตโนมัติและเพิ่มขั้นตอนชนิดคอลัมน์ที่เปลี่ยนแปลงใหม่
การแก้ไขคิวรีเอาต์พุต
เมื่อคุณย้อนกลับไปยังคิวรีไฟล์ CSV คุณจะสังเกตเห็นว่าขั้นตอนสุดท้ายจะทําให้คุณมีข้อผิดพลาดที่อ่านว่า "ไม่พบคอลัมน์ 'Column1' ของตาราง" เหตุผลที่อยู่เบื้องหลังข้อผิดพลาดนี้คือสถานะก่อนหน้าของคิวรีกําลังดําเนินการกับคอลัมน์ที่ชื่อว่า Column1 แต่เนื่องจากการเปลี่ยนแปลงที่เกิดขึ้นกับ คิวรีไฟล์ ตัวอย่างการแปลง คอลัมน์นี้จึงไม่มีอยู่อีกต่อไป ข้อมูลเพิ่มเติม: การจัดการกับข้อผิดพลาดใน Power Query
คุณสามารถลบขั้นตอนสุดท้ายของคิวรีนี้ออกจาก บานหน้าต่าง ใช้ขั้นตอน โดยการเลือกไอคอน ลบ X ทางด้านซ้ายของชื่อของขั้นตอน หลังจากลบขั้นตอนนี้แล้ว คิวรีของคุณจะแสดงผลลัพธ์ที่ถูกต้อง
อย่างไรก็ตาม โปรดสังเกตว่าไม่มีคอลัมน์ใดที่มาจากไฟล์ (วันที่ ประเทศ หน่วย รายได้) มีชนิดข้อมูลเฉพาะที่กําหนดให้กับคอลัมน์เหล่านั้น กําหนดชนิดข้อมูลที่ถูกต้องให้กับแต่ละคอลัมน์โดยใช้ตารางต่อไปนี้
ชื่อคอลัมน์ | ชนิดข้อมูล |
---|---|
วันที่ | วันที่ |
ประเทศ | Text |
หน่วย | จำนวนเต็ม |
รายได้ | สกุลเงิน |
หลังจากกําหนดชนิดข้อมูลสําหรับแต่ละคอลัมน์แล้ว คุณจะพร้อมที่จะโหลดตาราง
หมายเหตุ
เมื่อต้องการเรียนรู้วิธีการกําหนดหรือเปลี่ยนชนิดข้อมูลของคอลัมน์ ให้ไปที่ ชนิดข้อมูล
ตรวจ สอบ
เพื่อตรวจสอบว่าไฟล์ทั้งหมดได้รับการรวมกันแล้ว คุณสามารถเลือกไอคอนตัวกรองบนส่วนหัวของ คอลัมน์ Source.Name ซึ่งจะแสดงชื่อทั้งหมดของไฟล์ที่รวมเข้าด้วยกัน หากคุณได้รับคําเตือน "รายการอาจไม่สมบูรณ์" ให้เลือก โหลดเพิ่มเติม ที่ด้านล่างของเมนูเพื่อแสดงค่าที่พร้อมใช้งานเพิ่มเติมในคอลัมน์
หลังจากที่คุณเลือก โหลดเพิ่มเติมชื่อไฟล์ที่พร้อมใช้งานทั้งหมดจะปรากฏขึ้น