浅谈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登录并获取CSDN博客所有文章列表代码实例
Dec 28 Python
python @property的用法及含义全面解析
Feb 01 Python
在dataframe两列日期相减并且得到具体的月数实例
Jul 03 Python
对Python3中bytes和HexStr之间的转换详解
Dec 04 Python
Python设计模式之组合模式原理与用法实例分析
Jan 11 Python
Puppeteer使用示例详解
Jun 20 Python
Python图像处理之图片文字识别功能(OCR)
Jul 30 Python
python求质数列表的例子
Nov 24 Python
python+selenium 脚本实现每天自动登记的思路详解
Mar 11 Python
Python字符串格式化f-string多种功能实现
May 07 Python
解决python 执行sql语句时所传参数含有单引号的问题
Jun 06 Python
Pycharm Plugins加载失败问题解决方案
Nov 28 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
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
2019/10/03 PHP
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
require、backbone等重构手机图片查看器
2016/11/17 Javascript
基于Bootstrap的网页设计实例
2017/03/01 Javascript
nodejs入门教程二:创建一个简单应用示例
2017/04/24 NodeJs
提高Node.js性能的应用技巧分享
2017/08/10 Javascript
基于Cookie常用操作以及属性介绍
2017/09/07 Javascript
two.js之实现动画效果示例
2017/11/06 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
使用Python编写vim插件的简单示例
2015/04/17 Python
初步剖析C语言编程中的结构体
2016/01/16 Python
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
详解python的webrtc库实现语音端点检测
2017/05/31 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
PyCharm 常用快捷键和设置方法
2017/12/20 Python
python如何求解两数的最大公约数
2018/09/27 Python
Python操作MongoDb数据库流程详解
2020/03/05 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
美国婚礼和派对礼品网站:Kate Aspen(新娘送礼会、迎婴派对)
2018/03/28 全球购物
机械设计制造专业个人求职信
2013/09/25 职场文书
自我鉴定范文300字
2013/10/01 职场文书
经销商培训邀请函
2014/01/21 职场文书
大学四年个人自我小结
2014/03/05 职场文书
银行贷款承诺书
2014/03/29 职场文书
房产协议书范本
2014/10/18 职场文书
学校青年志愿者活动总结
2015/05/06 职场文书
公司庆典主持词
2015/07/04 职场文书
运动会新闻报道稿
2015/07/22 职场文书
Python3中PyQt5简单实现文件打开及保存
2021/06/10 Python
python中subplot大小的设置步骤
2021/06/28 Python
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题
Win11 vmware不兼容怎么办?Win11与VMware虚拟机不兼容的解决方法
2023/01/09 数码科技