Pandas: สร้างตารางเดือยที่มีหลาย aggfunc


คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อสร้างตารางเดือยในแพนด้าและระบุค่าหลายค่าให้กับอาร์กิวเมนต์ aggfunc :

 df. pivot_table (index=' col1 ', values=' col2 ', aggfunc=(' sum ', ' mean '))

ตัวอย่างนี้สร้างตารางสาระสำคัญที่แสดงผลรวมและค่าเฉลี่ยของค่าใน col2 ซึ่งจัดกลุ่มตาม col1

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

ตัวอย่าง: สร้างตารางเดือย Pandas ที่มี aggfunc หลายรายการ

สมมติว่าเรามี DataFrame แพนด้าต่อไปนี้ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B',
                            'B', 'B', 'C', 'C', 'C', 'C'],
                   ' points ': [4, 4, 2, 8, 9, 5, 5, 7, 8, 8, 4, 3],
                   ' assists ': [2, 2, 5, 5, 4, 7, 5, 3, 9, 8, 4, 4]})

#view DataFrame
print (df)

   team points assists
0 to 4 2
1 to 4 2
2 to 2 5
3 to 8 5
4 B 9 4
5 B 5 7
6 B 5 5
7 B 7 3
8 C 8 9
9 C 8 8
10 C 4 4
11 C 3 4

เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างตารางสรุปผลรวมและจำนวน คะแนน เฉลี่ยที่แต่ละ ทีม ทำได้:

 #create pivot table to summarize sum and mean of points by team
df. pivot_table (index=' team ', values=' points ', aggfunc=(' sum ', ' mean '))

	mean sum
team		
At 4.50 18
B 6.50 26
C 5.75 23

ตารางสรุปผลลัพธ์จะสรุปค่าเฉลี่ยและผลรวมคะแนนที่แต่ละทีมทำได้

ตัวอย่างเช่น เราเห็น:

  • ผู้เล่นทีม A มีค่าคะแนนเฉลี่ย 4.50 และคะแนนรวม 18
  • ผู้เล่นทีม B มีค่าคะแนนเฉลี่ย 6.50 และคะแนนรวม 26
  • ผู้เล่นทีม C มีค่าคะแนนเฉลี่ย 5.75 และคะแนนรวม 23

โปรดทราบว่าเรารวมโดยใช้ผลรวมและค่าเฉลี่ยในตัวอย่างนี้ แต่เราสามารถรวมตามหน่วยวัดอื่นๆ เช่น:

  • นับ
  • นาที
  • ขีดสุด
  • ค่ามัธยฐาน
  • มาตรฐาน (ส่วนเบี่ยงเบนมาตรฐาน)

ตัวอย่างต่อไปนี้แสดงวิธีรวมค่าคอลัมน์ คะแนน ตามเมตริกเหล่านี้สำหรับแต่ละทีม:

 #create pivot table to summarize several metrics for points by team
df. pivot_table (index=' team ', values=' points ',
               aggfunc=(' count ', ' min ', ' max ', ' median ', ' std '))

        count max median min std
team					
A 4 8 4.0 2 2.516611
B 4 9 6.0 5 1.914854
C 4 8 6.0 3 2.629956

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มของฟังก์ชัน pandas pivot_table() ได้ที่นี่

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

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

Pandas: วิธีจัดเรียงตารางเดือยตามค่าในคอลัมน์
นุ่น: วิธีสร้างตารางสาระสำคัญด้วยผลรวมของค่า
Pandas: วิธีเพิ่มผลรวมย่อยลงในตารางสรุป
Pandas: วิธีเปลี่ยนชื่อคอลัมน์ในตารางสาระสำคัญ

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

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