วิธีค้นหาค่ามัธยฐานต่อกลุ่มในหมีแพนด้า


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อคำนวณค่ามัธยฐานต่อกลุ่มในแพนด้า:

 df. groupby ([' group_variable '])[' value_variable ']. median (). reset_index ()

คุณยังสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณค่ามัธยฐาน โดยจัดกลุ่มตามหลายคอลัมน์:

 df. groupby ([' group1 ', ' group2 '])[' value_variable ']. median (). reset_index ()

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่างที่ 1: การค้นหาค่ามัธยฐานตามกลุ่ม

สมมติว่าเรามี DataFrames แพนด้าดังต่อไปนี้:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

	team position points rebounds
0 A G 5 11
1 A G 7 8
2 A F 7 10
3 A F 9 6
4 B G 12 6
5 B G 9 5
6 B F 9 9
7 B F 4 12

เราสามารถใช้โค้ดต่อไปนี้เพื่อค้นหาค่ามัธยฐานของคอลัมน์ “คะแนน” ซึ่งจัดกลุ่มตามทีม:

 #calculate median points by team
df. groupby ([' team '])[' points ']. median (). reset_index ()

	team points
0 to 7.0
1 B 9.0

จากผลลัพธ์เราจะเห็นได้ว่า:

  • คะแนนเฉลี่ยที่ผู้เล่นในทีม A ทำได้คือ 7
  • คะแนนเฉลี่ยที่ผู้เล่นในทีม B ทำได้คือ 9

โปรดทราบว่าเราสามารถหาค่ามัธยฐานของตัวแปรสองตัวพร้อมกันได้:

 #calculate median points and median rebounds by team
df. groupby ([' team '])[[' points ', ' rebounds ']]. median ()

	team points rebounds
0 to 7.0 9.0
1B 9.0 7.5

ตัวอย่างที่ 2: การค้นหาค่ามัธยฐานจากหลายกลุ่ม

รหัสต่อไปนี้แสดงวิธีการค้นหาค่ามัธยฐานของคอลัมน์ “คะแนน” ซึ่งจัดกลุ่มตามทีมและตำแหน่ง:

 #calculate median points by team
df. groupby ([' team ', ' position '])[' points ']. median (). reset_index ()

	team position points
0 A F 8.0
1 A G 6.0
2 B F 6.5
3 B G 10.5

จากผลลัพธ์เราจะเห็นได้ว่า:

  • คะแนนเฉลี่ยที่ผู้เล่นในตำแหน่ง “F” ของทีม A ทำได้คือ 8
  • ค่ามัธยฐานของคะแนนที่ผู้เล่นในตำแหน่ง “G” ของทีม A คือ 6
  • คะแนนเฉลี่ยที่ผู้เล่นในตำแหน่ง “F” ของทีม B ทำได้คือ 6.5
  • ค่ามัธยฐานของคะแนนที่ผู้เล่นในตำแหน่ง “G” ของทีม B คือ 10.5

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่น ๆ ในแพนด้า:

วิธีค้นหาค่าสูงสุดต่อกลุ่มที่ Pandas
วิธีหาผลรวมต่อกลุ่มในหมีแพนด้า
วิธีการคำนวณควอไทล์ตามกลุ่มใน Pandas

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *