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