浅谈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 相关文章推荐
python的类变量和成员变量用法实例教程
Aug 25 Python
用于统计项目中代码总行数的Python脚本分享
Apr 21 Python
Python标准库之Sys模块使用详解
May 23 Python
python实现在控制台输入密码不显示的方法
Jul 02 Python
关于numpy中np.nonzero()函数用法的详解
Feb 07 Python
python语言中with as的用法使用详解
Feb 23 Python
解决Pycharm后台indexing导致不能run的问题
Jun 27 Python
Django的models模型的具体使用
Jul 15 Python
Pandas聚合运算和分组运算的实现示例
Oct 17 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
Sep 03 Python
15款Python编辑器的优缺点,别再问我“选什么编辑器”啦
Oct 19 Python
Jupyter安装链接aconda实现过程图解
Nov 02 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
PHP&MYSQL服务器配置说明
2006/10/09 PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
2013/05/13 PHP
php微信公众平台开发之获取用户基本信息
2015/08/17 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
php框架CodeIgniter使用redis的方法分析
2018/04/13 PHP
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
讨论javascript(一)工厂方式 js面象对象的定义方法
2009/12/15 Javascript
jQuery模拟超链接点击效果代码
2013/04/21 Javascript
纯文字版返回顶端的js代码
2013/08/01 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
javascript实现ecshop搜索框键盘上下键切换控制
2015/03/18 Javascript
js中对函数设置默认参数值的3种方法
2015/10/23 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
BootStrap selectpicker
2016/06/20 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
详解最新vue-cli 2.9.1的webpack存在问题
2017/12/16 Javascript
JavaScript执行环境及作用域链实例分析
2018/08/01 Javascript
[47:06]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第一局
2016/03/05 DOTA
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[50:38]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第二场 3月7日
2021/03/11 DOTA
Python 40行代码实现人脸识别功能
2017/04/02 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
在Python 中同一个类两个函数间变量的调用方法
2019/01/31 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
python word转pdf代码实例
2019/08/16 Python
Django接收照片储存文件的实例代码
2020/03/07 Python
Python如何生成xml文件
2020/06/04 Python
英国街头品牌:Bee Inspired Clothing
2018/02/12 全球购物
结构工程个人自荐信范文
2013/11/30 职场文书
高中地理教学反思
2014/01/29 职场文书
乡镇交通安全实施方案
2014/03/29 职场文书
保险公司增员口号
2015/12/25 职场文书
当你焦虑迷茫时,请读读这6句话
2019/07/24 职场文书
Python 机器学习工具包SKlearn的安装与使用
2021/05/14 Python
Go gorilla/sessions库安装使用
2022/08/14 Golang