map(), apply()和applymap()的区别与应用

总结:

1.apply()是一种让函数作用于DataFrame中行或列的操作。
2.applymap()是一种让函数作用于DataFrame每一个元素的操作。
3.map()是一种让函数作用于Series每一个元素的操作。

apply()、map()和applymap()的区别就在于应用场景的不同
https://blog.csdn.net/GR346305172/article/details/100174898

1.apply()

apply()将一个函数作用于DataFrame中的行或列,如下所示

import pandas as pd
import numpy as np
frame = pd.DataFrame(np.random.randn(4, 3),columns=list('bde'),index=['Utah', 'Ohio', 'Texas', 'Oregon'])
frame
b	d	e
Utah	-0.774163	0.224804	-0.715506
Ohio	-0.678502	-1.864374	-0.652795
Texas	1.282988	-0.801617	-0.339106
Oregon	-1.077619	0.415863	0.454939
f = lambda x: x.max() - x.min()
frame.apply(f)
b    2.360607
d    2.280237
e    1.170445
dtype: float64

2.applymap()

applymap()则作用于DataFrame中的每一个元素,如下所示


import pandas as pd
import numpy as np
frame = pd.DataFrame(np.random.randn(4, 3),columns=list('bde'),index=['Utah', 'Ohio', 'Texas', 'Oregon'])import pandas as pd
import numpy as np
#小数点后的2代表2位小数
format = lambda x: '%.2f' % x
frame.applymap(format)
​
b	d	e
Utah	-0.10	-0.97	0.08
Ohio	-1.33	1.58	1.43
Texas	-0.62	0.29	-0.54
Oregon	-1.80	-1.08	-1.13

3.map()
map()是一个Series的函数,DataFrame结构中无法使用map()。map()则是将函数作用于Series中的每一个元素,如下所示


import pandas as pd
import numpy as np
frame = pd.DataFrame(np.random.randn(4, 3),columns=list('bde'),index=['Utah', 'Ohio', 'Texas', 'Oregon'])
format = lambda x: '%.2f' % x
frame['e'].map(format)
Utah       0.92
Ohio      -0.74
Texas      1.29
Oregon    -0.45
Name: e, dtype: object

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值