Cara menghitung simpangan baku per kelompok di panda
Anda dapat menggunakan metode berikut untuk menghitung deviasi standar per grup di panda:
Metode 1: Hitung simpangan baku kolom yang dikelompokkan berdasarkan kolom
df. groupby ([' group_col '])[' value_col ']. std ()
Metode 2: Hitung simpangan baku beberapa kolom yang dikelompokkan berdasarkan satu kolom
df. groupby ([' group_col '])[' value_col1 ', ' value_col2 ']. std ()
Metode 3: Hitung simpangan baku kolom yang dikelompokkan berdasarkan beberapa kolom
df. groupby ([' group_col1 ', ' group_col2 '])[' value_col ']. std ()
Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan pandas DataFrame berikut:
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
Contoh 1: Hitung simpangan baku kolom yang dikelompokkan berdasarkan kolom
Kode berikut menunjukkan cara menghitung simpangan baku kolom poin yang dikelompokkan berdasarkan kolom tim :
#calculate standard deviation of points grouped by team
df. groupby (' team ')[' points ']. std ()
team
A 6.70199
B 7.50000
Name: points, dtype: float64
Dari hasilnya kita dapat melihat:
- Standar deviasi poin Tim A adalah 6,70199 .
- Standar deviasi poin untuk Tim B adalah 7,5 .
Contoh 2: Hitung simpangan baku beberapa kolom yang dikelompokkan berdasarkan satu kolom
Kode berikut menunjukkan cara menghitung simpangan baku kolom poin dan simpangan baku kolom assist yang dikelompokkan berdasarkan kolom tim :
#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
Hasilnya menampilkan simpangan baku kolom poin dan kolom assist masing-masing tim.
Contoh 3: Hitung simpangan baku suatu kolom yang dikelompokkan berdasarkan beberapa kolom
Kode berikut menunjukkan cara menghitung simpangan baku kolom poin yang dikelompokkan berdasarkan kolom tim dan posisi :
#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
Dari hasilnya kita dapat melihat:
- Simpangan baku poin pemain tim A dan posisi F adalah 2,12 .
- Simpangan baku poin pemain tim A dan posisi G adalah 11,31 .
- Simpangan baku poin pemain tim B dan posisi F adalah 2,12 .
- Simpangan baku poin pemain tim B dan posisi G adalah 5,65 .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas panda umum lainnya:
Cara menghitung rata-rata kelompok di panda
Cara menghitung nilai maksimum per grup di Pandas
Cara menghitung jumlah per grup di Pandas
Cara menghitung kuantil berdasarkan kelompok di Pandas