热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

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

总结:

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


推荐阅读
author-avatar
飘飘秀秀真人_562
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有