pandas(四) -- 数值计算

  1. 数值计算
df = pd.DataFrame({'key1':[4,5,3,np.nan,2],
                 'key2':[1,2,np.nan,4,5],
                 'key3':[1,2,3,'j','k']},
                 index = ['a','b','c','d','e'])
print(df)
   key1  key2 key3
a   4.0   1.0    1
b   5.0   2.0    2
c   3.0   NaN    3
d   NaN   4.0    j
e   2.0   5.0    k
float64 float64 object

1.1 均值

  • 均值 df.mean() 整个DataFrame的均值,默认NaN值不参与运算
key1    3.5
key2    3.0
dtype: float64 
  • 按行求均值axis=1
    m2 = df.mean(axis=1)
a    2.5
b    3.5
c    3.0
d    4.0
e    3.5
dtype: float64
  • 按列求均值axis=0,或通过列名
df['key2'].mean()  #3.0

1.2 分位数
pandas 分位数

1.3 一些其他函数

df.count(),→ count统计非Na值的数量
df.min(),→ min统计最小值
df['key2'].max()→ max统计最大值
df.sum()→ sum求和
df.mean()→ mean求平均值
df.median()→ median求算数中位数,50%分位数
df.std(),df.var()→ std,var分别求标准差,方差
df.skew()→ skew样本的偏度
df.kurt()→ kurt样本的峰度
df['key1_s'] = df['key1'].cumsum() # 计算累加和
df['key1_p'] = df['key1'].cumprod() #计算累积
df.cummax(),df.cummin() → cummax,cummin分别求累计最大值,累计最小值

1.4 唯一值:.unique() 相当于python中的set().

s = pd.Series(list('asdvasdcfgg'))
['a' 's' 'd' 'v' 'c' 'f' 'g'] <class 'numpy.ndarray'>

1.5 值计数:.value_counts() Series对象的性质,不能用于DataFrame

sc = s.value_counts(sort = False)# # 也可以这样写:pd.value_counts(sc, sort = False)
d    2
a    2
s    2
c    1
f    1
g    2
v    1
dtype: int64

1.6 成员资格:.isin()逐个元素判断,是否在xx中

df = pd.DataFrame({'key1':list('asdcbvasd'),
                  'key2':np.arange(4,13)})
     
 key1  key2
0    a     4
1    s     5
2    d     6
3    c     7
4    b     8
5    v     9
6    a    10
7    s    11
8    d    12
print(df.isin(['a','bc','10',8]))
 key1   key2
0   True  False
1  False  False
2  False  False
3  False  False
4  False   True
5  False  False
6   True  False
7  False  False
8  False  False
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值