如何计算熊猫数据框的统计值?

时间:2019-12-12 23:56:47

标签: python arrays pandas numpy statistics

我有一个Pandas数据框,我想使用Describe()方法为每一列计算统计值,例如平均值,标准偏差等。

显示框架结构的示例:

X Axis (float array)        Y Axis (complex array)   Val (float)        Class
0   [0, 1, 2...]            [0, 1+1j, 2+2j,...]       1                 'd'
1   [0, 1, 2...]            [0, 1+1j, 2+2j,...]       2                 'n'
....

我已经调用了Describe()方法,但是它只显示计数,唯一值,最高值和频率值。

有人知道是否可以使用Describe()方法为每一列计算统计值,例如平均值,标准差等(对于复杂数组,将使用绝对值进行计算)?

或者有人可以建议如何继续计算这些值?

1 个答案:

答案 0 :(得分:1)

您可以使用scipy.stats.describe(df)来执行此操作。 这将返回您上面列出的所有统计信息以及更多信息。结果中每个键的值将是数组,并且该数组的每个元素将对应于数据框中相应列号的统计信息。 示例-

In [1]: from scipy import stats

In [2]: import pandas as pd

In [3]: df = pd.DataFrame([[1,2,3],[2,3,4],[3,4,5]], columns=list('abc'))

In [4]: stats.describe(df)
Out[4]: DescribeResult(nobs=3, minmax=(array([1, 2, 3]), array([3, 4, 5])), mean=array([2., 3., 4.]), variance=array([1., 1., 1.]), skewness=array([0., 0., 0.]), kurtosis=array([-1.5, -1.5, -1.5]))