python apply lambda if_详解Python中的map、lambda和apply用法
Hello大家好,欢迎来到【统计GO】,本公众号内容主要针对数据分析的爱好者,不定期分享一些好用的数据分析工具和机器学习资料,以及一些求职必备技能,帮助大家花更少的时间学更多的知识。
今天为大家推荐的是“详解pandas中的Map、Apply、Groupby函数”。如果本期内容对您有所帮助,记得及时关注。
1.Map
(1)数据集
(2)假设您想要添加一列,指出每种食物来自哪种动物。让我们写下每一种不同的肉类类型到动物的映射:
meat_to_animal = {'bacon': 'pig',
'pulled pork': 'pig','pastrami':'cow',
'corned beef': 'cow','honey ham': 'pig', 'nova lox': 'salmon'}
(3)处理完之后的数据
data['animal'] = lowercased.map(meat_to_animal)
2.Groupby
(1)简单组聚合的模型示意图
(2)数据集
(3)Groupby
grouped = df['data1'].groupby(df['key1']).mean()
Out: key1
a 0.746672
b -0.53758
3.Apply
(1)数据集
(2)lambda函数
f = lambda x: x.max() - x.min()
frame.apply(f)
Out:
b 1.802165
d 1.684034
e 2.689627
frame.apply(f, axis='columns')
Out:
Utah 0.998382
Ohio 2.521511
Texas 0.676115
Oregon 2.542656
(3)def f(x),计算每一列最小值和最大值
def f(x):
return pd.Series([x.min(), x.max()],
index=['min', 'max'])
frame.apply(f)
Out:
(4)每一列保留两位小数
format = lambda x: '%.2f' % x
frame.applymap(format)
Out:
4.总结
1. lambda与def的区别:
1)def创建的方法是有名称的,而lambda没有。
2)lambda会返回一个函数对象,但这个对象不会赋给一个标识符,而def则会把函数对象赋值给一个变量(函数名)。
3)lambda只是一个表达式,而def则是一个语句。
4)lambda表达式”:“后面,只能有一个表达式,def则可以有多个。
5)像if或for或print等语句不能用于lambda中,def可以。
6)lambda一般用来定义简单的函数,而def可以定义复杂的函数。
2. Map函数主要用于自定义分类规则.
Groupby函数主要用于计算组内统计量,特别是在缺失值填充中避免了用总体均值填充的弊端.
Apply函数主要用于将自定义之后的函数,应用到每一列或者特定的某一列中.
python apply lambda if_详解Python中的map、lambda和apply用法相关推荐
- python while循环if_详解python基础之while循环及if判断
wlile循环 while True表示永远为真,不管是什么条件都会向下执行,下面是写的一个例子. #!/usr/bin/env python age = 24 #给age赋一个值 while Tru ...
- dataframe groupby_详解pandas中的map、apply、applymap、groupby、agg.
一.简介 pandas提供了很多方便简洁的方法,用于对单列.多列数据进行批量运算或分组聚合运算,熟悉这些方法后可极大地提升数据分析的效率,也会使得你的代码更加地优雅简洁. 本文就将针对pandas中的 ...
- python操作目录_详解python中的文件与目录操作
详解python中的文件与目录操作 一 获得当前路径 1.代码1 >>>import os >>>print('Current directory is ',os. ...
- python xlrd安装_详解python中xlrd包的安装与处理Excel表格
一.安装xlrd 地址 下载后,使用 pip install .whl安装即好. 查看帮助: >>> import xlrd >>> help(xlrd) Help ...
- python判断字符串合法,详解Python判定IP地址合法性的三种方法 python中判断一个字符串是否是IP地址...
html 中 鼠标放在标签上会显示小手状,其它标签在其他标签上,美工给加了一些样式,鼠标放上去也显示小手状.有哪位大手状样式 有什么不懂的前端问题可以去菜鸟驿站.全都是泡沫,只一刹的花火,所谓的友情, ...
- python gil 解除_详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
先看一道GIL面试题: 描述Python GIL的概念, 以及它对python多线程的影响?编写一个多线程抓取网页的程序,并阐明多线程抓取程序是否可比单线程性能有提升,并解释原因. GIL:又叫全局解 ...
- python opencv 直方图均衡_详解python OpenCV学习笔记之直方图均衡化
本文介绍了python OpenCV学习笔记之直方图均衡化,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/d5/daf/tutorial_py_hi ...
- python归一化处理_详解python实现数据归一化处理的方式:(0,1)标准化
在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...
- python模式匹配算法_详解Python 最短匹配模式
问题 你正在试着用正则表达式匹配某个文本模式,但是它找到的是模式的最长可能匹配. 而你想修改它变成查找最短的可能匹配. 解决方案 这个问题一般出现在需要匹配一对分隔符之间的文本的时候(比如引号包含的字 ...
最新文章
- python3 rsa加密_【Python】Python3 实现 JS 中 RSA 加密的 NoPadding 模式
- cdh必须要在root用户搭建吗_基于cloudera CDH5的环境搭建
- 解决Android 5.1物理键盘与软键盘的同时使用
- HTTP解决设置返回header的code码为400仍然是200的问题
- 扩展easyui tree的两个方法 获取实心节点
- Chapter 7:Statistical-Model-Based Methods
- 133_Power BI 报表服务器2020年1月版本更新亮点
- 20180925-5 代码规范,结对要求
- 上传JSPX文件绕过网站后缀名检查
- 基于DS-lite的IP城域网向IPv6演进过渡方案研究
- 如何突破社会阶层,向上进阶?
- 零基础入门microbit教程
- 做电商,怎么降低快递运输成本?
- seo专员日常工作内容是什么?
- 阿里ESC7天训练营---搭建FTP服务
- http://www.sciencedirect.com/ 外文文献免费全文下载方法
- IO流和base64转换
- 现在最火爆的引流脚本好用吗?真的可以每天轻松引流500+精准粉吗
- 怎样将网页导入notability及goodnote同时图片加载完全怎样进行长截图
- 多版本node的安装与切换详细操作