apply,map,applymap总结

Python中apply,map,applymap总结
pandas中DataFrame 数据类型,使用map,apply方法使用较多,做一下总结。参考https://www.cnblogs.com/cymwill/p/7577369.html

总结:

apply 用在dataframe上,用于对row或者column进行计算;
applymap 用于dataframe上,是元素级别的操作;
map (其实是python自带的)用于series上,是元素级别的操作。
df = pd.DataFrame(np.random.randint(0,10,(4, 3)), columns=list(‘bde’), index=range(4))
df
b d e
0 4 9 3
1 3 1 0
2 4 8 0
3 2 9 9
apply:作用在dataframe的一行或一列上,也可以作用在series上
定义一个函数,

f = lambda x: x.max() - x.min()
这个函数可以结合apply作用在DataFrame类型的行或者列上

和加上axis = 0 ,默认是作用在列上

df.apply(f)
b 2
d 8
e 9
dtype: int64

axis = 1 ,默认是作用在行上

df.apply(f,axis =1)
0 6
1 3
2 8
3 7
dtype: int64
关于apply 传入多参数

def test(a,b):
return a,b
df[‘d’].apply(test,args=(‘ok’,))

args只能传入(元组)

0 (9, ok)
1 (1, ok)
2 (8, ok)
3 (9, ok)
Name: d, dtype: object
applymap: 作用在dataframe的每一个元素上
定义f2函数

f2 = lambda x: x+1 if x%2==0 else x
applymap 会将函数作用在DataFrame每一个元素上

df.applymap(f2)
b d e
0 5 9 3
1 3 1 1
2 5 9 1
3 3 9 9
map:作用将函数作用于一个Series的每一个元素
df[‘b’].map(f2)
0 5
1 3
2 5
3 3
Name: b, dtype: int64

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值