浅谈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与js)两种实现
Feb 21 Python
Linux CentOS7下安装python3 的方法
Jan 21 Python
python3.4.3下逐行读入txt文本并去重的方法
Apr 29 Python
Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例
May 16 Python
Python读取excel中的图片完美解决方法
Jul 27 Python
python 提取tuple类型值中json格式的key值方法
Dec 31 Python
Pytorch中的variable, tensor与numpy相互转化的方法
Oct 10 Python
python3.x 生成3维随机数组实例
Nov 28 Python
Python调用.NET库的方法步骤
Dec 27 Python
python识别验证码的思路及解决方案
Sep 13 Python
Python之Sklearn使用入门教程
Feb 19 Python
深度学习tensorflow基础mnist
Apr 14 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
function.inc.php超越php
2006/12/09 PHP
php UTF-8、Unicode和BOM问题
2010/05/18 PHP
php中拷贝构造函数、赋值运算符重载
2012/07/25 PHP
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
2016/03/07 PHP
Thinkphp5结合layer弹窗定制操作结果页面
2017/07/07 PHP
PHP的cookie与session原理及用法详解
2019/09/27 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
JS实现在Repeater控件中创建可隐藏区域的代码
2010/09/16 Javascript
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
2012/02/27 Javascript
jquery ui dialog实现弹窗特效的思路及代码
2013/08/03 Javascript
jquery实现div阴影效果示例代码
2013/09/16 Javascript
jQuery获取和设置表单元素的方法
2014/02/14 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
2014/06/20 Javascript
常用javascript表单验证汇总
2020/07/20 Javascript
jquery控制页面的展开和隐藏实现方法(推荐)
2016/10/15 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
2018/01/16 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
Node.js 使用axios读写influxDB的方法示例
2018/10/26 Javascript
Layui数据表格跳转到指定页的实现方法
2019/09/05 Javascript
[00:48]食人魔魔法师至宝“金鹏之幸”全新模型和自定义特效展示
2019/12/19 DOTA
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
python定时器(Timer)用法简单实例
2015/06/04 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
python进阶之自定义可迭代的类
2019/08/20 Python
详解HTML5 data-* 自定义属性
2018/01/24 HTML / CSS
狗狗玩具、零食和咀嚼物的月度送货服务:Super Chewer
2018/08/22 全球购物
全球性的在线婚纱礼服工厂:27dress.com
2019/03/21 全球购物
extern是什么意思
2016/03/10 面试题
会计专业自荐信
2013/12/02 职场文书
法人授权委托书
2014/04/03 职场文书
婚假请假条格式及范文
2014/04/10 职场文书
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
项目建议书
2015/02/04 职场文书
离婚起诉书怎么写
2015/05/19 职场文书
消防安全主题班会
2015/08/12 职场文书