One - One Code All

Blog Content

pandas汇总和计算描述统计:统计函数sum求和

Python 统计学-科学计算   2014-03-04 21:55:40

pandas汇总和计算描述统计:统计函数

pandas对象拥有一组常用的数学和统计方法。它们大部分都属于约简和汇总统计,用于从Series中提取的个值(如sum或mean)或从DataFrame的行或列中提取一个Series。


SUM方法:DataFrame对象的sum方法,返回一个含有列小计的Series。


统计方法的常用选项

axis=None,skipna = True,level=None


跟对应的NumPy数组方法相比,它们都是基于没有缺失数据的假设而构建的。


数学运算和约简(比如对某个轴求和)可以根据不同的元数据(轴编号)执行。灵活处理缺失数据。


描述和汇总统计

方法                                     说明

count                      非NA值的数量

describe                  针对Series或各DataFrame列计算汇总统计

min,max                 计算最小值和最大值

argmin,argmax        计算能够获取到最小值和最大值的索引位置(整数)

idxmin,idxmax         计算能够获取到最小值和最大值的索引值

quantile                   计算样本的分位数(0到 1) 

sum                        值的总和

mean                      值的平均数, a.mean() 默认对每一列的数据求平均值;若加上参数a.mean(1)则对每一行求平均值

media                      值的算术中位数(50%分位数)

mad                         根据平均值计算平均绝对离差

var                          样本值的方差 

std                        样本值的标准差

skew                     样本值的偏度(三阶矩)

kurt                       样本值的峰度(四阶矩)

cumsum                 样本值的累计和

cummin,cummax    样本值的累计最大值和累计最小

cumprod                样本值的累计积

diff                        计算一阶差分(对时间序列很有用) 

pct_change            计算百分数变化




>>>df = DataFrame([[1.4, np.nan], [7.1, -4.5], [np.nan, np.nan], [0.75,-1.3]],index=['a','b','c','d'],columns=[ 'one', 'two'])

>>>df


    one  two

a  1.40  NaN

b  7.10 -4.5

c   NaN  NaN

d  0.75 -1.3



>>> df.sum()

one    9.25

two   -5.80

dtype: float64

>>> df.sum(axis=1)

a    1.40

b    2.60

c    0.00

d   -0.55

dtype: float64


NA值会自动被踢除(新版本会自动转换为0)。可以通过skipna选项禁用此功能。


>>> df.sum(axis=1,skipna = False)

a     NaN

b    2.60

c     NaN

d   -0.55

dtype: float64

>>> df.sum(skipna =False)

one   NaN

two   NaN

dtype: float64


约简方法

这些方法并不会改变dataframe本身,而是返回一个改变的值?


约简方法的选项

选项         说明

axis      约简的轴。DataFrame的行用0,列用1

skipna      排除缺失值,默认值为True

level      如果轴是层次化索引的(即Multiindex),则根据level分组约简



上一篇:numba的vectorize参数顺序精度低的在前,高的在后
下一篇:python3 reduce未定义

The minute you think of giving up, think of the reason why you held on so long.