首页 > 编程笔记

Pandas Series对象常用统计函数

Series 中提供了常用的统计方法。除了 Numpy 中已有的方法外,还增加了一些比较便捷的方法,示例代码如下。
In [1]: import pandas as pd
In [2]: a=pd.Series([0,1,2,3,4,5])

1) all()

与 Python 中自带的 all 方法类似,判断一个序列中所有值是否全部为真。
In [3]: a.all()  # 判断是否全为真,因为存在0所以是False
Out[3]: False

2) any()

与 Python 中自带的 any 方法类似,判断一个序列中所有值是否有一个为真。
In [4]: a.any()  # 判断是否有真
Out[4]: True

3. sum()

与 Numpy 中的 sum 方法类似,计算序列的和。
In [5]: a.sum()  # 求和
Out[5]: 15

4) cumsun()

与 Numpy 中的 cumsum 方法类似,计算序列的累加值。
In [6]: a.cumsum()  # 累加
Out[6]: 
0     0
1     1
2     3
3     6
4    10
5    15
dtype: int64

5) pct_change()

pct_change 方法用来计算增长率。
In [7]: a.pct_change()  # 增长率
Out[7]: 
0         NaN
1         inf
2    1.000000
3    0.500000
4    0.333333
5    0.250000
dtype: float64

6) prod()

与 Numpy 中的 prod 方法类似,计算序列的乘积。
In [8]: a[1:].prod()  # 乘积
Out[8]: 120

7) cumprod()

与 Numpy 中的 cumprod 方法类似,计算序列的累乘积。
In [9]: a[1:].cumprod()  # 累乘
Out[9]: 
1      1
2      2
3      6
4     24
5    120
dtype: int64

8) max()

与 Python 中自带的 max 方法和 Numpy 中的 amax 方法类似,求序列中的最大值。
In [10]: a.max()  # 最大值
Out[10]: 5

9)idmax()

与 Numpy 中的 argmax 方法类似,求序列中最大值的索引。
In [11]: a.idxmax()  # 返回最大值的索引
Out[11]: 5

10)min()

与 Python 中自带的 min 方法和 Numpy 中的 amin 方法类似,求序列中的最小值。
In [12]: a.min()  # 最小值
Out[12]: 0

11)idmin()

与 Numpy 中的 argmin 方法类似,求序列中最小值的索引。
In [13]: a.idxmin()  #返回最小值的下标
Out[13]: 0

12)nlargest()

nlargest方法用来返回序列中值最大的两个数。
In [14]: a.nlargest(2)  # 最大的两个数
Out[14]: 
5    5
4    4
dtype: int64

13) nsmallest()

nsmallest 方法用来返回序列中值最小的两个数。
In [15]: a.nsmallest(2)  # 最小的两个数
Out[15]: 
0    0
1    1
dtype: int64

14) mean()

与 Numpy 中的 mean 方法类似,求序列的平均值。
In [16]: a.mean()  # 平均值
Out[16]: 2.5

15)median()

与 Numpy 中的 median 方法类似,求序列的中位数。

In [17]: a.median()  # 中位数
Out[17]: 2.5

16) quantile()

与 Numpy 中的 percentile 方法类似,求序列的分位数。
In [18]: a.quantile(0.5)  # 0.5分位数
Out[18]: 2.5

17) std()

与 Numpy 中的 std 方法类似,求序列的标准差。
In [19]: a.std()  # 标准差
Out[19]: 1.8708286933869707

18) var()

与 Numpy 中的 var 方法类似,求序列的方差。
In [20]: a.var()  # 求方差
Out[20]: 3.5

19) describe

describe 方法是一个便捷的统计方法,它可以用来输出一个序列的基础的描述统计函数。
In [21]: a.describe()  # 描述序列
Out[21]: 
count    6.000000
mean     2.500000
std      1.870829
min      0.000000
25%      1.250000
50%      2.500000
75%      3.750000
max      5.000000
dtype: float64

20)kurt()和skew()

kurt 和 skew 方法用来输出序列的峰度和偏度。
In [22]: a.kurt()  # 峰度
Out[22]: -1.2000000000000002
In [23]: a.skew()  # 偏度
Out[23]: 0.0

21)cov()和 corr() 

cov 和 corr 方法用来计算两个序列的协方差和相关性系数。
In [24]: b=pd.Series([-5,-4,-3,-2,-1,0])
In [25]: a.cov(b)  # 协方差
Out[25]: 3.5
In [26]: a.corr(b)  # 相关性
Out[26]: 1.0 

优秀文章