การจัดกลุ่มหรือการสรุปแถว
ใน Power Query คุณสามารถจัดกลุ่มค่าในแถวต่าง ๆ ให้เป็นค่าเดียวได้โดยการจัดกลุ่มแถวตามค่าในหนึ่งคอลัมน์หรือมากกว่า คุณสามารถเลือกการดําเนินการจัดกลุ่มได้สองชนิด:
การจัดกลุ่มคอลัมน์
การจัดกลุ่มแถว
สําหรับบทช่วยสอนนี้ คุณกําลังใช้ตารางตัวอย่างต่อไปนี้
ภาพหน้าจอของตารางที่มีคอลัมน์ที่แสดงปี (2020) ประเทศ (สหรัฐอเมริกา ปานามา หรือแคนาดา), ผลิตภัณฑ์ (เสื้อหรือกางเกงขาสั้น), ช่องทางการขาย (ออนไลน์หรือผู้จําหน่าย) และหน่วย (ค่าต่างๆ ตั้งแต่ 55 ถึง 7500)
ตําแหน่งที่จะค้นหาปุ่ม จัดกลุ่มตาม
คุณสามารถค้นหาปุ่ม จัดกลุ่มตาม ในสามตําแหน่ง:
บนแท็บ หน้าแรก ของ
ในกลุ่ม แปลง บนแท็บ
แปลง ในกลุ่ม ตารางบนเมนูทางลัด เมื่อคุณคลิกขวาเพื่อเลือกคอลัมน์
ใช้ฟังก์ชันการรวมเพื่อจัดกลุ่มตามคอลัมน์อย่างน้อยหนึ่งคอลัมน์
ในตัวอย่างนี้ เป้าหมายของคุณคือสรุปจํานวนหน่วยทั้งหมดที่ขายได้ในระดับประเทศและช่องทางการขาย คุณใช้คอลัมน์ ประเทศ
- เลือก
จัดกลุ่มตาม บนแท็บ หน้าแรก ของ - เลือกตัวเลือก ขั้นสูง
เพื่อให้คุณสามารถเลือกหลายคอลัมน์ที่จะจัดกลุ่มตามได้ - เลือกคอลัมน์ ประเทศ
- เลือก เพิ่มการจัดกลุ่ม
- เลือกคอลัมน์
Sales Channel - ใน
ชื่อคอลัมน์ใหม่ ใส่หน่วยรวมในการดําเนินงาน ให้เลือก ผลรวมคอลัมน์ เลือก หน่วย - เลือก
ตกลง
การดําเนินการนี้จะให้ตารางต่อไปนี้แก่คุณ
การดําเนินงานที่พร้อมใช้งาน
ด้วยคุณลักษณะ Group ตาม การดําเนินการที่พร้อมใช้งานสามารถจัดประเภทได้สองวิธี:
- การดําเนินการระดับแถว
- การดําเนินการในระดับคอลัมน์
ตารางต่อไปนี้อธิบายการดําเนินการเหล่านี้แต่ละรายการ
ชื่อการดําเนินการ | ประเภท | คำอธิบาย |
---|---|---|
ผลรวม |
การดําเนินการคอลัมน์ | รวมค่าทั้งหมดจากคอลัมน์ |
เฉลี่ย |
การดําเนินการคอลัมน์ | คํานวณค่าเฉลี่ยจากคอลัมน์ |
ค่ามัธยฐาน |
การดําเนินการคอลัมน์ | คํานวณค่ามัธยฐานจากคอลัมน์ |
นาที |
การดําเนินการคอลัมน์ | คํานวณค่าต่ําสุดจากคอลัมน์ |
สูงสุดของ |
การดําเนินการคอลัมน์ | คํานวณค่าสูงสุดจากคอลัมน์ |
เปอร์เซ็นต์ไทล์ |
การดําเนินการคอลัมน์ | คํานวณเปอร์เซ็นไทล์โดยใช้ค่าอินพุตจาก 0 ถึง 100 จากคอลัมน์ |
นับค่าที่แตกต่างกัน | การดําเนินการคอลัมน์ | คํานวณจํานวนค่าที่แตกต่างกันจากคอลัมน์ |
การนับแถว |
การดําเนินการของแถว | คํานวณจํานวนแถวทั้งหมดจากกลุ่มที่ระบุ |
นับจํานวนแถวที่แตกต่างกัน | การดําเนินการของแถว | คํานวณจํานวนแถวที่แตกต่างกันจากกลุ่มที่ระบุ |
แถวทั้งหมด | การดําเนินการของแถว | แสดงแถวที่จัดกลุ่มทั้งหมดค่าตารางที่ไม่มีการรวม |
โน้ต
ดําเนินการเพื่อจัดกลุ่มตามคอลัมน์อย่างน้อยหนึ่งรายการ
เริ่มต้นจากตัวอย่างเดิม ในตัวอย่างนี้ คุณสร้างคอลัมน์ที่มีหน่วยรวมและสองคอลัมน์อื่นๆ ที่ให้ชื่อและหน่วยที่ขายให้กับผลิตภัณฑ์ที่มีประสิทธิภาพสูงสุด โดยสรุปไว้ในระดับประเทศและช่องทางการขาย
ใช้คอลัมน์ต่อไปนี้เป็นคอลัมน์ จัดกลุ่มตาม :
- ประเทศ
- ช่องทางการขาย
สร้างสองคอลัมน์ใหม่โดยทําตามขั้นตอนเหล่านี้:
- รวมคอลัมน์ หน่วย
โดยใช้การดําเนินการ ผลรวม ตั้งชื่อคอลัมน์นี้ หน่วยรวม - เพิ่มคอลัมน์
Products ใหม่โดยใช้การดําเนินการ แถวทั้งหมด
- รวมคอลัมน์ หน่วย
หลังจากการดําเนินการดังกล่าวเสร็จสมบูรณ์ ให้สังเกตว่าคอลัมน์ Products มีค่า [Table] ภายในแต่ละเซลล์อย่างไร แต่ละค่า [ตาราง] ประกอบด้วยแถวทั้งหมดที่ถูกจัดกลุ่มตาม Country
โน้ต
บานหน้าต่างแสดงตัวอย่างรายละเอียดอาจไม่แสดงแถวทั้งหมดที่ใช้สําหรับการดําเนินการ group-by คุณสามารถเลือกค่า [ตาราง] เพื่อดูแถวทั้งหมดที่เกี่ยวข้องกับการดําเนินการ group-by ที่สอดคล้องกัน
ถัดไป คุณจําเป็นต้องแยกแถวที่มีค่าสูงสุดในคอลัมน์ Units ของตารางภายในคอลัมน์ Products ใหม่ และเรียกใช้คอลัมน์ใหม่นั้น ผลิตภัณฑ์ผู้ทํางานยอดเยี่ยม
แยกข้อมูลผลิตภัณฑ์ที่มีประสิทธิภาพสูงสุด
ด้วยคอลัมน์
ตั้งชื่อคอลัมน์ใหม่ของคุณ ผลิตภัณฑ์ที่มีประสิทธิภาพสูงสุด ใส่
ผลลัพธ์ของสูตรนั้นสร้างคอลัมน์ใหม่ด้วยค่า [Record] ค่าเรกคอร์ดเหล่านี้เป็นตารางที่มีแถวเดียวเป็นหลัก ระเบียนเหล่านี้ประกอบด้วยแถวที่มีค่าสูงสุดสําหรับคอลัมน์
ด้วย ใหม่นี้ คอลัมน์ ผลิตภัณฑ์ที่มีประสิทธิภาพสูงสุดที่ประกอบด้วยค่า [Record] คุณสามารถเลือกไอคอนขยาย เลือกเขตข้อมูล Product และ หน่วย จากนั้นเลือก ตกลง
หลังจากที่คุณลบคอลัมน์
การจัดกลุ่มแบบไม่ฟุซซี่
โน้ต
คุณลักษณะต่อไปนี้พร้อมใช้งานใน Power Query Online เท่านั้น
หากต้องการสาธิตวิธีการ "การจัดกลุ่มแบบไม่เป็นทางการ" ให้พิจารณาตารางตัวอย่างที่แสดงในรูปต่อไปนี้
เป้าหมายของการจัดกลุ่มแบบไม่ลับคือการดําเนินจัดกลุ่มตามที่ใช้อัลกอริทึมการจับคู่โดยประมาณสําหรับสตริงข้อความ Power Query ใช้อัลกอริทึมความคล้ายคลึงกันของ Jaccard เพื่อวัดความคล้ายคลึงกันระหว่างคู่ของอินสแตนซ์ จากนั้นใช้การคลัสเตอร์แบบลําดับชั้นเชิงรวมกับอินสแตนซ์กลุ่มเข้าด้วยกัน รูปภาพต่อไปนี้แสดงผลลัพธ์ที่คุณคาดหวัง ซึ่งตารางจะถูกจัดกลุ่มตามคอลัมน์ Person
ในการจัดกลุ่มแบบไม่เป็นทางการ คุณต้องทําตามขั้นตอนเดียวกันที่อธิบายไว้ในบทความนี้ ความแตกต่างเดียวคือ ในเวลานี้ในกล่องโต้ตอบ Group by คุณเลือกกล่องกาเครื่องหมาย ใช้การจัดกลุ่มแบบไม่เต็มตา
สําหรับแต่ละกลุ่มแถว Power Query จะเลือกอินสแตนซ์ที่ใช้บ่อยที่สุดเป็นอินสแตนซ์ "มาตรฐาน" ถ้าหลายอินสแตนซ์เกิดขึ้นด้วยความถี่เดียวกัน Power Query จะเลือกอินสแตนซ์แรก หลังจากที่คุณเลือก ตกลง ในกล่องโต้ตอบ Group by คุณจะได้รับผลลัพธ์ที่คุณคาดหวังไว้
อย่างไรก็ตาม คุณสามารถควบคุมการดําเนินการจัดกลุ่ม Fuzzy ได้มากขึ้นโดยการขยายตัวเลือกกลุ่ม Fuzzy
ตัวเลือกต่อไปนี้จะพร้อมใช้งานสําหรับการจัดกลุ่มแบบไม่เป็นทางการ:
- ค่าเกณฑ์ความคล้ายคลึงกัน (ไม่บังคับ): ตัวเลือกนี้แสดงให้เห็นว่าต้องจัดกลุ่มค่าสองค่าที่คล้ายกันอย่างไร การตั้งค่าต่ําสุดของศูนย์ (0) ทําให้ค่าทั้งหมดถูกจัดกลุ่มเข้าด้วยกัน การตั้งค่าสูงสุดของ 1 อนุญาตให้รวมค่าที่ตรงกับการจัดกลุ่มเข้าด้วยกันเท่านั้น ค่าเริ่มต้นคือ 0.8
- ละเว้นตัวพิมพ์ : เมื่อมีการเปรียบเทียบสตริงข้อความ ตัวพิมพ์เล็กจะถูกละเว้น ตัวเลือกนี้จะถูกเปิดใช้งานโดยค่าเริ่มต้น
- จัดกลุ่มโดยการรวมข้อความ : อัลกอริทึมพยายามที่จะรวมส่วนของข้อความ (เช่น การรวม Micro และ แบบนุ่มลงใน Microsoft) เพื่อจัดกลุ่มค่าต่างๆ
- แสดงคะแนนความคล้ายคลึงกัน: แสดงคะแนนความคล้ายคลึงกันระหว่างค่าที่ป้อนเข้าและค่าตัวแทนจากการคํานวณหลังจากการจัดกลุ่มแบบไม่ชัดเจน จําเป็นต้องเพิ่มการดําเนินการ เช่น แถวทั้งหมด เพื่อแสดงข้อมูลนี้ในระดับแถวต่อแถว
- ตารางการแปลง (ไม่บังคับ): คุณสามารถเลือกตารางการแปลงที่แมปค่าต่าง ๆ (เช่น การแมป MSFT ไปยัง Microsoft) เพื่อจัดกลุ่มเข้าด้วยกัน
สําหรับตัวอย่างนี้ ตารางการแปลงถูกใช้เพื่อแสดงให้เห็นว่าสามารถแมปค่าได้อย่างไร ตารางการแปลงมีสองคอลัมน์:
- จาก: สตริงข้อความที่จะค้นหาในตารางของคุณ
- ถึง: สตริงข้อความที่จะใช้เพื่อแทนที่สตริงข้อความในคอลัมน์ จาก
รูปภาพต่อไปนี้แสดงตารางการแปลงที่ใช้ในตัวอย่างนี้
สําคัญ
สิ่งสําคัญคือตารางการแปลงมีคอลัมน์และชื่อคอลัมน์เดียวกันดังที่แสดงในรูปภาพก่อนหน้า (ต้องมีป้ายชื่อ "From" และ "To") มิฉะนั้น Power Query ไม่รู้จักตารางเป็นตารางการแปลง
กลับไปที่กล่องโต้ตอบ กลุ่ม ตาม ขยายตัวเลือกกลุ่ม ไม่ชัดเจนเปลี่ยนการดําเนินการจาก นับจํานวนแถว เป็น แถวทั้งหมด เปิดใช้งานตัวเลือก แสดงคะแนนความคล้ายคลึงกัน จากนั้นเลือกตัวเลือก ตารางการแปลง เมนูดรอปดาวน์
หลังจากที่คุณเลือกตารางการแปลงแล้ว ให้เลือก ตกลง ผลลัพธ์ของการดําเนินการดังกล่าวให้ข้อมูลต่อไปนี้แก่คุณ:
ในตัวอย่างนี้ ตัวเลือก ละเว้นกรณี เปิดใช้งานตัวเลือกดังนั้นค่าในคอลัมน์ จาก ของตาราง Transformation จะถูกใช้เพื่อค้นหาสตริงข้อความโดยไม่ต้องพิจารณากรณีของสตริง การดําเนินการแปลงนี้เกิดขึ้นก่อน จากนั้นจะดําเนินการจัดกลุ่มแบบไม่เป็นทางการ
คะแนนความคล้ายคลึงกันจะแสดงในค่าตารางถัดจากคอลัมน์บุคคล ซึ่งสะท้อนให้เห็นว่ามีการจัดกลุ่มค่าและคะแนนความคล้ายคลึงกันอย่างไร คุณสามารถขยายคอลัมน์นี้ได้ถ้าต้องการหรือใช้ค่าจากคอลัมน์ความถี่ใหม่สําหรับการแปลงประเภทอื่น ๆ
โน้ต
เมื่อจัดกลุ่มตามหลายคอลัมน์ ตารางการแปลงจะดําเนินการแทนที่ในคอลัมน์ทั้งหมดถ้าการแทนที่ค่าจะเพิ่มคะแนนความคล้ายคลึงกัน
สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทํางานของตารางการแปลง ให้ไปที่ ตารางการแปลง