如何计算pandas中的均值、中位数和众数
您可以使用以下函数来计算 pandas DataFrame 中每个数字列的平均值、中位数和众数:
print ( df.mean (numeric_only= True )) print (df. median (numeric_only= True )) print (df. mode (numeric_only= True ))
下面的例子展示了如何在实践中使用这些函数。
示例:计算 Pandas 的平均值、中位数和众数
假设我们有以下 pandas DataFrame,其中包含有关不同篮球运动员在四场不同比赛中得分的信息:
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, 10, 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 10 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
我们可以使用以下语法来计算每个数字列的平均值:
#calculate mean of each numeric column print ( df.mean (numeric_only= True )) game1 18,250 game2 7,750 game3 8.375 game4 10,750 dtype:float64
从结果我们可以看出:
- game1列中的平均值为18.25 。
- game2列中的平均值为7.75 。
- game3列中的平均值是8.375 。
- game4列中的平均值是10.75 。
然后我们可以使用以下语法来计算每个数字列的中值:
#calculate median of each numeric column print (df. median (numeric_only= True )) game1 18.5 game2 8.0 game3 8.5 game4 10.0 dtype:float64
从结果我们可以看出:
- game1列中的中值为18.5 。
- game2列中的中值为8 。
- game3列中的中值为8.5 。
- game4列中的中值为10 。
然后我们可以使用以下语法来计算每个数字列的众数:
#calculate mode of each numeric column print (df. mode (numeric_only= True )) game1 game2 game3 game4 0 14.0 9.0 6.0 9 1 NaN NaN NaN 10
从结果我们可以看出:
- game1列中的模式是14 。
- game2列中的模式是9 。
- game3列中的众数是6 。
- game4栏中的模式是9和10
请注意, game4列有两种模式,因为该列中出现最频繁的有两个值。
注意:您还可以使用pandas 中的describe()函数为每列生成更多描述性统计信息。
其他资源
以下教程解释了如何在 pandas 中执行其他常见操作: