วิธีการคำนวณค่าเบี่ยงเบนมาตรฐานต่อกลุ่มในหมีแพนด้า
คุณสามารถใช้วิธีการต่อไปนี้เพื่อคำนวณค่าเบี่ยงเบนมาตรฐานต่อกลุ่มในแพนด้า:
วิธีที่ 1: คำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ที่จัดกลุ่มตามคอลัมน์
df. groupby ([' group_col '])[' value_col ']. std ()
วิธีที่ 2: คำนวณค่าเบี่ยงเบนมาตรฐานของหลายคอลัมน์โดยจัดกลุ่มตามคอลัมน์เดียว
df. groupby ([' group_col '])[' value_col1 ', ' value_col2 ']. std ()
วิธีที่ 3: คำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ที่จัดกลุ่มตามหลายคอลัมน์
df. groupby ([' group_col1 ', ' group_col2 '])[' value_col ']. std ()
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' position ': ['G', 'F', 'F', 'G', 'F', 'F', 'G', 'G'], ' points ': [30, 22, 19, 14, 14, 11, 20, 28], ' assists ': [4, 3, 7, 7, 12, 15, 8, 4]}) #view DataFrame print (df) team position points assists 0 AG 30 4 1 AF 22 3 2 FY 19 7 3 AG 14 7 4 BF 14 12 5 BF 11 15 6 BG 20 8 7 BG 28 4
ตัวอย่างที่ 1: คำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ที่จัดกลุ่มตามคอลัมน์
รหัสต่อไปนี้แสดงวิธีคำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ คะแนน โดยจัดกลุ่มตามคอลัมน์ ทีม :
#calculate standard deviation of points grouped by team
df. groupby (' team ')[' points ']. std ()
team
A 6.70199
B 7.50000
Name: points, dtype: float64
จากผลลัพธ์เราจะเห็นได้ว่า:
- ค่าเบี่ยงเบนมาตรฐานของคะแนนของทีม A คือ 6.70199
- ค่าเบี่ยงเบนมาตรฐานของคะแนนสำหรับทีม B คือ 7.5
ตัวอย่างที่ 2: คำนวณ ค่าเบี่ยงเบนมาตรฐาน ของหลายคอลัมน์ที่จัดกลุ่มตามคอลัมน์เดียว
รหัสต่อไปนี้แสดงวิธีการคำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ คะแนน และค่าเบี่ยงเบนมาตรฐานของคอลัมน์ ช่วยเหลือ ซึ่งจัดกลุ่มตามคอลัมน์ ทีม :
#calculate standard deviation of points and assists grouped by team
df. groupby (' team ')[[' points ', ' assists ']]. std ()
assist points
team
A 6.70199 2.061553
B 7.50000 4.787136
ผลลัพธ์จะแสดงค่าเบี่ยงเบนมาตรฐานของคอลัมน์ คะแนน และคอลัมน์ ช่วยเหลือ สำหรับแต่ละทีม
ตัวอย่างที่ 3: คำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ที่จัดกลุ่มตามหลายคอลัมน์
รหัสต่อไปนี้แสดงวิธีคำนวณค่าเบี่ยงเบนมาตรฐานของคอลัมน์ คะแนน โดยจัดกลุ่มตามคอลัมน์ ทีม และ ตำแหน่ง :
#calculate standard deviation of points, grouped by team and position
df. groupby ([' team ', ' position '])[' points ']. std ()
team position
AF 2.121320
G 11.313708
BF 2.121320
G 5.656854
Name: points, dtype: float64
จากผลลัพธ์เราจะเห็นได้ว่า:
- ค่าเบี่ยงเบนมาตรฐานของแต้มของผู้เล่นทีม A และตำแหน่ง F คือ 2.12 .
- ค่าเบี่ยงเบนมาตรฐานของแต้มของผู้เล่นทีม A และตำแหน่ง G คือ 11.31 .
- ค่าเบี่ยงเบนมาตรฐานของแต้มของผู้เล่นทีม B และตำแหน่ง F คือ 2.12 .
- ค่าเบี่ยงเบนมาตรฐานของแต้มของผู้เล่นทีม B และตำแหน่ง G คือ 5.65
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานแพนด้าทั่วไปอื่นๆ:
วิธีการคำนวณค่าเฉลี่ยกลุ่มในหมีแพนด้า
วิธีการคำนวณค่าสูงสุดต่อกลุ่มใน Pandas
วิธีคำนวณจำนวนเงินต่อกลุ่มที่ Pandas
วิธีการคำนวณควอไทล์ตามกลุ่มใน Pandas