浅谈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库安装包下载地址与安装过程详细介绍(Windows版)
Nov 02 Python
利用Python暴力破解zip文件口令的方法详解
Dec 21 Python
python批量修改文件夹及其子文件夹下的文件内容
Mar 15 Python
python里 super类的工作原理详解
Jun 19 Python
教你一步步利用python实现贪吃蛇游戏
Jun 27 Python
python3.6+django2.0+mysql搭建网站过程详解
Jul 24 Python
Python搭建代理IP池实现获取IP的方法
Oct 27 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
django中related_name的用法说明
May 20 Python
Python实现8种常用抽样方法
Jun 27 Python
利用Python将list列表写入文件并读取的方法汇总
Mar 25 Python
Python函数对象与闭包函数
Apr 13 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使之能同时支持GIF和JPEG
2006/10/09 PHP
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
ThinkPHP CURD方法之order方法详解
2014/06/18 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
教您去掉ie网页加载进度条的方法
2010/12/09 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
JS+CSS实现美化的下拉列表框效果
2015/08/11 Javascript
纯JavaScript代码实现文本比较工具
2016/02/17 Javascript
JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】
2019/09/03 jQuery
python代码制作configure文件示例
2014/07/28 Python
python实现根据用户输入从电影网站获取影片信息的方法
2015/04/07 Python
详细讲解Python中的文件I/O操作
2015/05/24 Python
python定时器(Timer)用法简单实例
2015/06/04 Python
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
pytorch训练imagenet分类的方法
2018/07/27 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
python实现AES加密与解密
2019/03/28 Python
使用Python pip怎么升级pip
2020/08/11 Python
使用canvas绘制贝塞尔曲线
2014/12/17 HTML / CSS
Maje德国官网:法国女性成衣品牌
2017/02/10 全球购物
Perfume’s Club德国官网:在线购买香水
2019/04/08 全球购物
Shop Apotheke瑞士:您的健康与美容网上商店
2019/10/09 全球购物
Athleta官网:购买女士瑜伽服、技术运动服和休闲运动服
2020/11/12 全球购物
如何开发一个JQuery插件
2016/07/28 面试题
精选干货:Java精选笔试题附答案
2014/01/18 面试题
元旦促销方案
2014/03/15 职场文书
就业推荐表自我鉴定
2014/03/21 职场文书
导师推荐信范文
2014/05/09 职场文书
查摆问题对照检查材料
2014/08/28 职场文书
大学生党员自我剖析材料
2014/10/06 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
会计工作能力自我评价
2015/03/05 职场文书
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
2021/04/01 PHP
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
2022/08/14 MySQL