浅谈Pandas中map, applymap and apply的区别


Posted in Python onApril 10, 2018

1.apply()

当想让方程作用在一维的向量上时,可以使用apply来完成,如下所示

In [116]: frame = DataFrame(np.random.randn(4, 3), columns=list('bde'), index=['Utah', 'Ohio', 'Texas', 'Oregon'])
In [117]: frame
Out[117]: 
        b     d     e
Utah  -0.029638 1.081563 1.280300
Ohio  0.647747 0.831136 -1.549481
Texas  0.513416 -0.884417 0.195343
Oregon -0.485454 -0.477388 -0.309548
In [118]: f = lambda x: x.max() - x.min()
In [119]: frame.apply(f)
Out[119]: 
b  1.133201
d  1.965980
e  2.829781
dtype: float64

但是因为大多数的列表统计方程 (比如 sum 和 mean)是DataFrame的函数,所以apply很多时候不是必须的

2.applymap()

如果想让方程作用于DataFrame中的每一个元素,可以使用applymap().用法如下所示

In [120]: format = lambda x: '%.2f' % x
In [121]: frame.applymap(format)
Out[121]: 
      b   d   e
Utah  -0.03  1.08  1.28
Ohio   0.65  0.83 -1.55
Texas  0.51 -0.88  0.20
Oregon -0.49 -0.48 -0.31

3.map()

map()只要是作用将函数作用于一个Series的每一个元素,用法如下所示

In [122]: frame['e'].map(format)
Out[122]: 
Utah    1.28
Ohio   -1.55
Texas   0.20
Oregon  -0.31
Name: e, dtype: object

总的来说就是apply()是一种让函数作用于列或者行操作,applymap()是一种让函数作用于DataFrame每一个元素的操作,而map是一种让函数作用于Series每一个元素的操作。

以上这篇浅谈Pandas中map, applymap and apply的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
Jan 23 Python
浅谈python import引入不同路径下的模块
Jul 11 Python
python机器学习实战之K均值聚类
Dec 20 Python
Python装饰器原理与简单用法实例分析
Apr 29 Python
python bmp转换为jpg 并删除原图的方法
Oct 25 Python
python如何实现一个刷网页小程序
Nov 27 Python
解决vscode python print 输出窗口中文乱码的问题
Dec 03 Python
python的常用模块之collections模块详解
Dec 06 Python
python使用Plotly绘图工具绘制气泡图
Apr 01 Python
python将图片转base64,实现前端显示
Jan 09 Python
Keras - GPU ID 和显存占用设定步骤
Jun 22 Python
Python实现淘宝秒杀功能的示例代码
Jan 19 Python
对pandas中apply函数的用法详解
Apr 10 #Python
Python 25行代码实现的RSA算法详解
Apr 10 #Python
使用pandas中的DataFrame数据绘制柱状图的方法
Apr 10 #Python
Python基于socket模块实现UDP通信功能示例
Apr 10 #Python
pandas把dataframe转成Series,改变列中值的类型方法
Apr 10 #Python
在pandas中一次性删除dataframe的多个列方法
Apr 10 #Python
pandas将DataFrame的列变成行索引的方法
Apr 10 #Python
You might like
Zend Framework实现留言本分页功能(附demo源码下载)
2016/03/22 PHP
PHP简单获取多个checkbox值的方法
2016/06/13 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
2018/05/31 PHP
由document.body和document.documentElement想到的
2009/04/13 Javascript
javascript模版引擎-tmpl的bug修复与性能优化分析
2011/10/23 Javascript
jQuery插件 selectToSelect使用方法
2013/10/02 Javascript
Enter转换为Tab的小例子(兼容IE,Firefox)
2013/11/14 Javascript
JavaScript函数详解
2014/11/17 Javascript
node.js中的fs.futimesSync方法使用说明
2014/12/17 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
深入理解MVC中的时间js格式化
2016/05/19 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
jQuery Position方法使用和兼容性
2017/08/23 jQuery
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
JavaScript 截取字符串代码实例
2019/09/05 Javascript
微信小程序canvas截取任意形状的实现代码
2020/01/13 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
2020/08/13 Javascript
[01:16]2014DOTA2 TI专访C9战队EE:中国五强中会占三席
2014/07/10 DOTA
python算法学习之桶排序算法实例(分块排序)
2013/12/18 Python
python类装饰器用法实例
2015/06/04 Python
python遍历一个目录,输出所有的文件名的实例
2018/04/23 Python
python3实现名片管理系统
2020/11/29 Python
对python 命令的-u参数详解
2018/12/03 Python
利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统
2019/09/25 Python
Python查找不限层级Json数据中某个key或者value的路径方式
2020/02/27 Python
浅谈python元素如何去重,去重后如何保持原来元素的顺序不变
2020/02/28 Python
Python使用jupyter notebook查看ipynb文件过程解析
2020/06/02 Python
keras实现VGG16方式(预测一张图片)
2020/07/07 Python
我们没有写servlet的构造方法,那么容器是怎么创建servlet的实例呢
2013/04/24 面试题
北大自主招生自荐信
2013/10/19 职场文书
少先队学雷锋活动总结范文
2014/03/09 职场文书
大班幼儿评语大全
2014/04/30 职场文书
中学生的1000字检讨书
2014/10/11 职场文书
高效课堂教学反思
2016/02/24 职场文书
2016优秀大学生个人事迹材料范文
2016/03/01 职场文书