浅谈pandas筛选出表中满足另一个表所有条件的数据方法


Posted in Python onFebruary 08, 2019

今天记录一下pandas筛选出一个表中满足另一个表中所有条件的数据。例如:

list1 结构:名字,ID,颜色,数量,类型。

list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]

list2结构:名字,类型,颜色。

list2 = [['a','03',255],['a','06',481]]

如何在list1中找出所有与list2中匹配的元素?要得到下面的结果:list = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03']]。

首先将两个list转化为dataframe.

list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]
df1=pd.DataFrame(list1,columns=["名字","ID","颜色","数量","类型"])
list2 = [['a','03',255],['a','06',481]]
df2=pd.DataFrame(list2,columns=["名字","类型","颜色"])

数据结构如下:

浅谈pandas筛选出表中满足另一个表所有条件的数据方法

然后利用pandas.merge函数将其进行内连接。

这个函数的语法是:

pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)。这函数连接方式和sql的连接类似,由参数how来控制。

最后的代码如下:

import pandas as pd
list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]
df1=pd.DataFrame(list1,columns=["名字","ID","颜色","数量","类型"])
list2 = [['a','03',255],['a','06',481]]
df2=pd.DataFrame(list2,columns=["名字","类型","颜色"])
df=pd.merge(df1,df2,how='inner',on=["名字","类型","颜色"],right_index=True)
df.sort_index(inplace=True)
print(df)

返回结果按照左表的顺序输出:

浅谈pandas筛选出表中满足另一个表所有条件的数据方法

以上这篇浅谈pandas筛选出表中满足另一个表所有条件的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用reportlab画图示例(含中文汉字)
Dec 03 Python
python使用beautifulsoup从爱奇艺网抓取视频播放
Jan 23 Python
Python 实现数据库更新脚本的生成方法
Jul 09 Python
python实现抖音视频批量下载
Jun 20 Python
python list格式数据excel导出方法
Oct 31 Python
Python实现统计英文文章词频的方法分析
Jan 28 Python
由面试题加深对Django的认识理解
Jul 19 Python
python-Web-flask-视图内容和模板知识点西宁街
Aug 23 Python
python爬虫 Pyppeteer使用方法解析
Sep 28 Python
Django 限制访问频率的思路详解
Dec 24 Python
QT5 Designer 打不开的问题及解决方法
Aug 20 Python
python归并排序算法过程实例讲解
Nov 04 Python
pandas dataframe添加表格框线输出的方法
Feb 08 #Python
python读取有密码的zip压缩文件实例
Feb 08 #Python
对python判断是否回文数的实例详解
Feb 08 #Python
用Python解决x的n次方问题
Feb 08 #Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
Feb 07 #Python
Python实现E-Mail收集插件实例教程
Feb 06 #Python
使用TensorFlow实现二分类的方法示例
Feb 05 #Python
You might like
php格式化工具Beautify PHP小小BUG
2008/04/24 PHP
php 图片上添加透明度渐变的效果
2009/06/29 PHP
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
Yii框架实现多数据库配置和操作的方法
2017/05/25 PHP
验证用户是否修改过页面的数据的实现方法
2008/09/26 Javascript
JavaScript中的style.display属性操作
2013/03/27 Javascript
javascript窗口宽高,鼠标位置,滚动高度(详细解析)
2013/11/18 Javascript
javascript操作符"!~"详解
2015/02/10 Javascript
jQuery实现圣诞节礼物动画案例解析
2016/12/25 Javascript
原生Javascript插件开发实践
2017/01/09 Javascript
mac下的nodejs环境安装的步骤
2017/05/24 NodeJs
Express框架之connect-flash详解
2017/05/31 Javascript
使用Angular CLI进行单元测试和E2E测试的方法
2018/03/24 Javascript
浅谈vue加载优化策略
2019/03/19 Javascript
vue实现绑定事件的方法实例代码详解
2019/06/20 Javascript
jQuery实现消息弹出框效果
2019/12/10 jQuery
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
利用Python的Flask框架来构建一个简单的数字商品支付解决方案
2015/03/31 Python
使用Python设置tmpfs来加速项目的教程
2015/04/17 Python
轻量级的Web框架Flask 中模块化应用的实现
2017/09/11 Python
python导出chrome书签到markdown文件的实例代码
2017/12/27 Python
Diango + uwsgi + nginx项目部署的全过程(可外网访问)
2018/04/22 Python
更换Django默认的模板引擎为jinja2的实现方法
2018/05/28 Python
python中@property和property函数常见使用方法示例
2019/10/21 Python
vue学习笔记之动态组件和v-once指令简单示例
2020/02/29 Python
Python异常处理机制结构实例解析
2020/07/23 Python
python实现图片素描效果
2020/09/26 Python
Lookfantastic西班牙官网:英国知名美妆购物网站
2018/06/13 全球购物
会计职业生涯规划范文
2014/01/04 职场文书
交通工程专业推荐信
2014/09/06 职场文书
刘公岛导游词
2015/02/05 职场文书
党风廉政建设个人总结
2015/03/06 职场文书
初中思品教学反思
2016/02/20 职场文书
导游词之京东大峡谷旅游区
2019/10/29 职场文书