pandas 笔记008
目录
八、pandas统计计算方法
1.主要统计方法
方法 | 说明 |
---|---|
count | 非NAN值的数量 |
describe | 针对Series或各DataFrame列计算汇总统计 |
min、max | 计算最小值和最大值 |
argmin. argmax | 计算能够获取到最小值和最大值的索引位置(整数) |
idxmin、 idxmax | 计算能够获取到最小值和最大值的索引值 |
quantile | 计算样本的分位数(0到1) |
sum | 值的总和 |
mean | 值的平均数 |
median | 值的算术中位数(50%分位数) |
mad | 根据平均值计算平均绝对离差 |
var | 样本值的方差 |
std | 样本值的标准差 |
skew | 样本值的偏度(三阶矩) |
kurt | 样本值的峰度(四阶矩) |
cumsum | 样本值的家计和 |
cummin、 cummax | 样本值的累计最大值和累计最小值 |
cumprod | 样本值的累计积 |
diff | 计算一阶差分(对时间序列很有用) |
pct_change | 计算百分数变化 |
2. 示例一些方法
import numpy as np
import pandas as pd
df = pd.DataFrame([[1,2,np.nan],
[2,6,np.nan],
[3,8,9],
[np.nan,2,1]],index=list('abcd'),columns=list('MNK'))
df
M N K
a 1.0 2 NaN
b 2.0 6 NaN
c 3.0 8 9.0
d NaN 2 1.0
2.1 sum()
默认axis=0 计算列 默认skipna=True
(计算时排除NAN值)
df.sum()
M 6.0
N 18.0
K 10.0
dtype: float64
默认axis=0 计算列 ,skipna=False
(计算时不排除NAN值,有NAN值的计算都会返回NAN值)
df.sum(skipna=False)
M NaN
N 18.0
K NaN
dtype: float64
计算行(axis=1
或者axis='columns'
) 默认skipna=True
(计算时排除NAN值)
df.sum(axis=1)
a 3.0
b 8.0
c 20.0
d 3.0
dtype: float64
计算行(axis=1
或者axis='columns'
) skipna=False
(计算时不排除NAN值,有NAN值的计算都会返回NAN值)
df.sum(axis=1,skipna=False)
a NaN
b NaN
c 20.0
d NaN
dtype: float64
2.2 idxmax() 和 idxmin()
idxmax()
默计(axis=0
)算每列能够获取到最大值的行索引值 (如果有多个相同的最大值则取第一个),axis=1
则计算每行能够获取到最大值的列索引值。NAN值不用管。
idxmin()
默计(axis=0
)算每列能够获取到最小值的行索引值 (如果有多个相同的最小值则取第一个),axis=1
则计算每行能够获取到最大值的列索引值。
a = pd.DataFrame([ [4,2,4],
[2,6,np.nan],
[4,np.nan,9],
[np.nan,2,1]]</