Pandas: so berechnen sie die standardabweichung für jede zeile


Sie können die folgende grundlegende Syntax verwenden, um die Standardabweichung der Werte für jede Zeile eines Pandas-DataFrames zu berechnen:

 df. std (axis= 1 , numeric_only= True )

Das Argument axis=1 weist Pandas an, die Berechnung für jede Zeile (anstelle jeder Spalte) durchzuführen, und numeric_only=True weist Pandas an, bei der Berechnung nur numerische Spalten zu berücksichtigen.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Berechnen Sie die Standardabweichung für jede Zeile in Pandas

Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über die von verschiedenen Basketballspielern in vier verschiedenen Spielen erzielten Punkte enthält:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' game1 ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' game2 ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' game3 ': [11, 8, 10, 6, 6, 5, 9, 12],
                   ' game4 ': [9, 8, 8, 9, 14, 15, 10, 11]})
                   
#view DataFrame
print (df)

  player game1 game2 game3 game4
0 A 18 5 11 9
1 B 22 7 8 8
2 C 19 7 10 8
3 D 14 9 6 9
4 E 14 12 6 14
5 F 11 9 5 15
6 G 20 9 9 10
7:28 4 12 11

Wir können die folgende Syntax verwenden, um die Standardabweichung der von jedem Spieler erzielten Punkte zu berechnen:

 #calculate standard deviation for each row
df. std (axis= 1 , numeric_only= True )

0 5.439056
1 7.182154
2 5.477226
3 3.316625
4 3.785939
5 4.163332
6 5.354126
7 10.144785
dtype:float64

So interpretieren Sie das Ergebnis:

  • Die Standardabweichung der von Spieler A erzielten Punkte beträgt 5,439 .
  • Die Standardabweichung der von Spieler B erzielten Punkte beträgt 7,182 .
  • Die Standardabweichung der von Spieler C erzielten Punkte beträgt 5,477 .

Und so weiter.

Beachten Sie, dass die Funktion std() standardmäßig die Standardabweichung der Stichprobe berechnet.

Wenn Sie stattdessen die Populationsstandardabweichung berechnen möchten, müssen Sie das Argument ddof=0 verwenden:

 #calculate population standard deviation for each row
df. std (axis= 1 , ddof= 0 , numeric_only= True )

0 4.747351
1 5.881366
2 4.807037
3 3.384910
4 3.983518
5 3.915150
6 4.892772
7 8.091179
dtype:float64

Verwandt: Bevölkerung vs. Beispiel-Standardabweichung: Wann jeweils zu verwenden ist

Um einer neuen Spalte Standardabweichungswerte zuzuweisen, können Sie die folgende Syntax verwenden:

 #add new column to display standard deviation for each row
df[' std_points '] = df. std (axis= 1 , numeric_only= True )

#view updated DataFrame
print (df)

  player game1 game2 game3 game4 points_std
0 A 18 5 11 9 5.439056
1 B 22 7 8 8 7.182154
2 C 19 7 10 8 5.477226
3 D 14 9 6 9 3.316625
4 E 14 12 6 14 3.785939
5 F 11 9 5 15 4.163332
6 G 20 9 9 10 5.354126
7:28 AM 4 12 11 10.144785

Die Standardabweichung der Werte für jede Zeile in den Spalten game1 , game2 , game3 und game4 wird jetzt in der Spalte „points_std“ angezeigt.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:

So erhalten Sie die erste Zeile von Pandas DataFrame
So entfernen Sie die erste Zeile in Pandas DataFrame
So fügen Sie eine Zeile in einen Pandas DataFrame ein

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert