วิธีการคำนวณค่าเฉลี่ยแบบมีเงื่อนไขในนุ่น (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อคำนวณค่าเฉลี่ยแบบมีเงื่อนไขในแพนด้า:
df. loc [df[' team '] == ' A ', ' points ']. mean ()
วิธีนี้จะคำนวณค่าเฉลี่ยของคอลัมน์ “คะแนน” สำหรับแต่ละแถวใน DataFrame โดยที่คอลัมน์ “ทีม” เท่ากับ “A”
ตัวอย่างต่อไปนี้แสดงวิธีการใช้ไวยากรณ์นี้ในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
' points ': [99, 90, 93, 86, 88, 82],
' assists ': [33, 28, 31, 39, 34, 30]})
#view DataFrame
print (df)
team points assists
0 to 99 33
1 A 90 28
2 A 93 31
3 B 86 39
4 B 88 34
5 B 82 30
ตัวอย่างที่ 1: คำนวณค่าเฉลี่ยแบบมีเงื่อนไขสำหรับตัวแปรประเภท
รหัสต่อไปนี้แสดงวิธีการคำนวณค่าเฉลี่ยของคอลัมน์ “คะแนน” สำหรับแถวใน DataFrame โดยที่คอลัมน์ “ทีม” มีค่า “A”
#calculate mean of 'points' column for rows where team equals 'A'
df. loc [df[' team '] == ' A ', ' points ']. mean ()
94.0
ค่าเฉลี่ยในคอลัมน์ “คะแนน” สำหรับแถวที่ “ทีม” เท่ากับ “A” คือ 94
เราสามารถตรวจสอบได้ด้วยตนเองโดยการเฉลี่ยค่าคะแนนเฉพาะสำหรับบรรทัดที่ “ทีม” เท่ากับ “A”:
- คะแนนเฉลี่ย: (99 + 90 + 93) / 3 = 94
ตัวอย่างที่ 2: คำนวณค่าเฉลี่ยแบบมีเงื่อนไขสำหรับตัวแปรตัวเลข
รหัสต่อไปนี้แสดงวิธีการคำนวณค่าเฉลี่ยของคอลัมน์ “ช่วยเหลือ” สำหรับแถวใน DataFrame เท่านั้น โดยที่คอลัมน์ “คะแนน” มีค่ามากกว่าหรือเท่ากับ 90
#calculate mean of 'assists' column for rows where 'points' >= 90
df. loc [df[' points '] >= 90 , ' assists ']. mean ()
30.666666666666668
ค่าเฉลี่ยในคอลัมน์ “ช่วยเหลือ” สำหรับแถวที่ “คะแนน” มากกว่าหรือเท่ากับ 90 คือ 30.66667
เราสามารถตรวจสอบได้ด้วยตนเองโดยการเฉลี่ยค่าคะแนนเฉพาะสำหรับบรรทัดที่ “ทีม” เท่ากับ “A”:
- แอสซิสต์เฉลี่ย: (33 + 28 + 31) / 3 = 30.66667
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ในแพนด้า:
วิธีการคำนวณค่าเฉลี่ยของคอลัมน์ใน Pandas
วิธีการคำนวณค่าเฉลี่ยเคลื่อนที่ในหมีแพนด้า
วิธีเติมค่า NaN ด้วยค่าเฉลี่ยในหมีแพนด้า