อะไรคือ Pivot และ Unpivot ใน Power BI

ในหลายๆครั้ง เรามักจะเจอปัญหาว่า ทำกราฟที่ต้องการไม่ได้จากข้อมูลดิบที่เรามี ความจริงก็คือเราจะต้อง ‘shape’ ข้อมูลให้อยู่ในรูปแบบที่ถูกต้อง ก่อนที่จะนำไปสร้างกราฟต่างๆ ซึ่งจุดนี้เองเป็นจุดแข็งของ Power BI ที่เราชอบมากๆ

ตัวอย่างนี้เป็นคำตอบของแบบสอบถามออนไลน์ที่เป็น multiple answer (เลือกตอบได้หลายข้อ) โดยมีคำถามว่า “สินค้าประเภทใดที่คุณซื้อออนไลน์บ้าง” โดยที่ 1 คน (ID) สามารถตอบได้หลายคำตอบ ซึ่งกราฟด้านล่างนี้เป็นกราฟที่เราอยากจะได้

อย่างไรก็ตาม ข้อมูลดิบของเราจะมีอยู่ 2 ลักษณะคือ 1) คำตอบอยู่ใน column เดียว แล้วมี comma คั่นระหว่างคำตอบ  2) เป็นค่า 0,1 ใน column หลายๆ อัน ตามจำนวนคำตอบที่มี

ในการทำกราฟรูปแบบด้านบน ข้อมูลเราจะต้องเป็น 2 column คือ ID และ value ว่าแต่ละคำตอบคืออะไร โดย 1 ID จะอยู่ในหลาย row ตามจำนวนคำตอบที่ได้ตอบมา

ฟังก์ชั่นที่เราจะใช้คือ ‘unpivot’ เพื่อทำให้ header กลายมาเป็น rows ใน column ‘attribute’ และแสดงค่า 0,1 ใน column ‘values’

หลังจากนั้นเราสามารถทำให้ label สวยโดยการเลือกเฉพาะ text ที่อยู่หลัง ‘-‘ และ filter เฉพาะคำตอบ ‘1’  (มีการเลือก)

สุดท้ายเราก็สามารถทำกราฟได้ง่ายด้วย ด้วยการใช้ column ‘Attribute’ และ ‘Count of ID’

โดยสรุปคือ ‘pivot column’ ทำให้ข้อมูลใน row เป็น header และ ‘unpivot column’ ทำให้ข้อมูลจาก header เป็น row ซึ่งมีประโยชน์มากในการสร้างกราฟ

สนใจเรียนรู้เพิ่มเติมเกี่ยวกับ Power BI?
เข้าร่วม Workshop