การใช้ Power Query จัดการข้อมูลที่มีหัวตาราง 2 ชั้น 1

การใช้ Power Query จัดการข้อมูลที่มีหัวตาราง 2 ชั้น

ปัญหาข้อมูลเน่าแบบ classic อันนึงเลยก็คือ ได้ข้อมูลเชิง Report มา และดันใส่หัวตาราง 2 ชั้นมาด้วย ทำให้ใช้ Unpivot ตรงๆ ไม่ได้

คราวนี้จะทำยังไงดี มาดูกันครับ

Download ข้อมูลที่มีหัวตาราง 2 ชั้นได้ที่เว็บสำนักงานสถิติแห่งชาติ

จำนวนนักเรียน นิสิต นักศึกษาในระบบโรงเรียน ในสถานศึกษาของรัฐบาลและเอกชน จำแนกตามระดับการศึกษา และชั้น ปีการศึกษา 2556 – 2560

หรือ http://statbbi.nso.go.th/staticreport/Page/sector/TH/report/sector_03_3_TH_.xlsx

หลักๆ การจัดการข้อมูลใน Power Query จะมีแนวทางดังนี้

ข้อมูลอยู่ในรูปแบบ Report ยังไม่ใช่ข้อมูลเชิง Database

  • ติดข้อมูลอื่นที่ไม่เกี่ยวมา เช่น header/footer -> filter, remove col, remove top/bottom rows
  • ข้อมูลเว้นว่างแบบละไว้ในฐานที่เข้าใจ -> fill down
  • ข้อมูล error -> replace error
  • ข้อมูลมีตัว Subtotal ติดมาด้วย -> หาทาง filter ออก
  • คอลัมน์เดียวกันปนมาหลายเรื่อง -> conditional column -> หาทาง filter ออก
  • หัวตาราง crosstab เชิง Report (เรื่องเดียวมีหลายคอลัมน์) -> Unpivot
  • หัวตาราง 2 ชั้น -> Transpose -> Fill Down -> Merge -> Unpivot

ข้อมูลมีหลายตาราง

  • ข้อมูลแบบเดียวกัน เลยอยากเอามาต่อแถวกัน เช่น เป็นคนละช่วงเวลา คนละสินค้า -> Append
  • เป็นข้อมูลที่เกี่ยวข้องกัน อยากเอามาต่อคอลัมน์กัน เช่น ตารางจำนวนประชากรรายจังหวัด vs จำนวนอาชญากรรมรายจังหวัด -> Merge / Data Model

เอาล่ะ มาเริ่มกันเลย

ผมทำเป็นคลิปไว้แล้ว ลองเปิดดูได้เลยนะครับ

อบรม In-House Training

Feedback การใช้งาน AI Chatbot