Pandas使用技巧-apply,条件筛选
使用Pandas的技巧就是熟悉Pandas的函数库,在数据处理过程中尽量使用Pandas方法。
Pandas支持类似SQL的语句,适合对二维表格数据进行处理。
apply()批量数据处理
import pandas as pdIn [4]: data = [{'A': i, 'B': 2*i} for i in range(1, 8, 2)]In [5]: data
Out[5]: [{'A': 1, 'B': 2}, {'A': 3, 'B': 6}, {'A': 5, 'B': 10}, {'A': 7, 'B': 14}]In [6]: data = pd.DataFrame(data) # 创建DataFrame对象In [7]: data
Out[7]:A B
0 1 2
1 3 6
2 5 10
3 7 14# 取出某一列
In [8]: data['B']
Out[8]:
0 2
1 6
2 10
3 14
Name: B, dtype: int64# 单列批处理
# 可以自定义函数def function():passdata['B'].apply(function)In [9]: data['B'].apply(lambda x: x/2)
Out[9]:
0 1.0
1 3.0
2 5.0
3 7.0
Name: B, dtype: float64# 按行批处理
In [10]: data.apply(lambda row:row['A'] + row['B'], axis=1)
Out[10]:
0 3
1 9
2 15
3 21
dtype: int64# 全体批处理
In [11]: data.apply(lambda x: x/2)
Out[11]:A B
0 0.5 1.0
1 1.5 3.0
2 2.5 5.0
3 3.5 7.0
条件筛选及缺失值处理
In [20]: data = [{'A': i, 'B': 2*i} for i in range(1, 8, 2)]In [21]: data = pd.DataFrame(data) # 创建DataFrame对象In [22]: data
Out[22]:A B
0 1 2
1 3 6
2 5 10
3 7 14# 首先判断True或False,然后选出值为True的数据
In [23]: data[data['A']>4]
Out[23]:A B
2 5 10
3 7 14In [25]: data[(data['A']>4) & (data['B']<12)]
Out[25]:A B
2 5 10In [12]: data.where(data>5)
Out[12]:A B
0 NaN NaN
1 NaN 6.0
2 NaN 10.0
3 7.0 14.0# 直接删除含有缺失值的数据行
In [13]: data.where(data>5).dropna()
Out[13]:A B
3 7.0 14.0# 对缺失值进行赋值填充
In [14]: data.where(data>5).fillna({'A':1, 'B':2})
Out[14]:A B
0 1.0 2.0
1 1.0 6.0
2 1.0 10.0
3 7.0 14.0
拼接DataFrame
# 创建包含3个DataFrame的列表
In [15]: data = [data for i in range(3)]# 竖向拼接
In [17]: pd.concat(data)
Out[17]:A B
0 1 2
1 3 6
2 5 10
3 7 14
0 1 2
1 3 6
2 5 10
3 7 14
0 1 2
1 3 6
2 5 10
3 7 14# 横向拼接
In [18]: pd.concat(data, axis=1)
Out[18]:A B A B A B
0 1 2 1 2 1 2
1 3 6 3 6 3 6
2 5 10 5 10 5 10
3 7 14 7 14 7 14
Pandas使用技巧-apply,条件筛选相关推荐
- 【Pandas学习】多条件筛选DataFrame
目录 一.按列筛选 1.简单筛选 2.多条件筛选 二.按行筛选 三.多条件组合 一.按列筛选 1.简单筛选 DataFrame\Series 执行>.<.==这些运算符时,会将每一个元素进 ...
- pandas apply lambda_一分钟一个Pandas小技巧(二)
" 在逛Kaggle的时候发现了一篇不错的Pandas技巧,我将挑选一些有用的并外加一些自己的想法分享给大家.本系列虽基础但带仍有一些奇怪操作,粗略扫一遍,您或将发现一些您需要的技巧.&qu ...
- python input函数赋值法_DataFrame添加列(赋值法、apply()、assign()、条件筛选)
在DataFrame添加一列常用4种方法,分别是1.直接赋值法; 2.apply函数;3.assign函数; 4.条件筛选,此外,concat函数也可以灵活的添加列,insert函数可以插入列,后续专 ...
- Pandas处理excel数据笔记(数据透视|多条件筛选)
遇到复杂条件下海量的数据透视任务,excel难以驾驭.如对不同部门在不同年份吸收了什么学历的员工,pandas的筛选发挥了神奇的作用. 一.导包 pip install pandas pip inst ...
- pandas使用组合条件筛选、过滤数据行
pandas使用组合条件筛选.过滤数据行 目录 pandas使用组合条件筛选.过滤数据行 #仿真数据
- Pandas常见的数据过滤方法、通过列条件筛选行数据
Pandas常见的数据过滤方法.通过列条件筛选行数据 不废话了,直接看代码吧: 一般情况下,前面5种就覆盖了绝大多数需求 import pandas as pd import numpy as npd ...
- Py之pandas:利用isin函数对dataframe格式数据按照多个字段的条件筛选
Py之pandas:利用isin函数对dataframe格式数据按照多个字段的条件筛选 目录 利用isin函数对dataframe格式数据按照多个字段的条件筛选 代码设计 输出结果
- Pandas条件筛选 | Python技能树征题
相关知识 筛选是数据处理中非常频繁使用的功能,而Pandas对表格型数据(Pandas.DataFrame)已经封装了非常完善的条件筛选功能,他们支持下面五种比较运算符和两种逻辑运算符. 运算符 含义 ...
- mongo 多条件筛选_Excel筛选功能,你确定这些小技巧你都玩明白了
Excel筛选功能,大家都不陌生,工作中经常用到,但是对于筛选,除了常用的筛选功能外,还可以使用高级筛选技巧.一提起这些技巧,各位是不是一脸懵,没关系,只要想学就什么时候都不晚. 筛选功能是很强大的, ...
最新文章
- python用什么软件编程1001python用什么软件编程-Python中免验证跳转到内容页的实例代码...
- QPushButton 点击信号分析
- python实现弹幕_python实现b站直播自动发送弹幕功能
- 黑暗爆炸OJ 3028. 食物 生成函数
- Git push 时每次都需要密码的疑惑
- Golang list双向链表源码走读
- matlab interp2插值函数的使用
- 模板引擎thymeleaf和freemarker
- 微型计算机原理与接口技术(慕课版),微机原理与接口技术
- 映美精双目相机无法同时显示的问题
- Java能和comsol连接吗_安装COMSOL时遇到与Java相关的错误
- 计算机一级exc除法函数,excel除法函数 excel除法如何表示
- Android微信代扣sdk无法拉起,微信JS-SDK选择图片遇到的坑
- 【独行秀才】macOS Big Sur 11.6.5正式版(20G517)原版镜像
- cad批量选择相同块_cad怎么快速选择相同图形/块?
- html打开网页过场动画_网页制作设计基础知识
- 隐枚举法matlab程序,隐枚举法例题
- xshell 5评估期已过,不能使用的解决办法
- 超星电子图书的阅读技巧提示
- ColorMatrix颜色矩阵让图片千变万化