如何计算 pandas 的标准差:举例


您可以使用DataFrame.std()函数来计算 pandas DataFrame 中值的标准差。

实际中可以使用以下方法来计算标准差:

方法 1:计算列的标准差

 df [ ' column_name ' ] . std ( )

方法二:计算多列的标准差

 df [[ ' column_name1 ', ' column_name2 '] ] . std ( )

方法三:计算所有数值列的标准差

 df . std ( )

请注意, std()函数在计算标准差时会自动忽略 DataFrame 中的任何 NaN 值。

以下示例展示了如何将每种方法与以下 pandas DataFrame 一起使用:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'],
                   ' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

	team points assists rebounds
0 to 25 5 11
1 to 12 7 8
2 B 15 7 10
3 B 14 9 6
4 B 19 12 6
5 B 23 9 5
6 C 25 9 9
7 C 29 4 12

方法 1:计算列的标准差

以下代码显示了如何计算 DataFrame 中列的标准差:

 #calculate standard deviation of 'points' column
df [ ' points ' ] . std ( )

6.158617655657106

标准差为6.1586

方法二:计算多列的标准差

以下代码展示了如何计算DataFrame中多列的标准差:

 #calculate standard deviation of 'points' and 'rebounds' columns
df[[' points ', ' rebounds ']]. std ()

points 6.158618
rebounds 2.559994
dtype:float64

“得分”列的标准差为6.1586 ,“篮板”列的标准差为2.5599

方法三:计算所有数值列的标准差

以下代码显示了如何计算 DataFrame 中每个数字列的标准差:

 #calculate standard deviation of all numeric columns
df. std ()

points 6.158618
assists 2.549510
rebounds 2.559994
dtype:float64

请注意,pandas 没有计算“team”列的标准差,因为它不是数字列。

其他资源

以下教程解释了如何在 pandas 中执行其他常见操作:

如何计算 Pandas 中列的平均值
如何计算 Pandas 中的列中位数
如何计算 Pandas 中列的最大值

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注