浅谈pandas筛选出表中满足另一个表所有条件的数据方法
作者:qq_24499417 时间:2022-08-12 14:29:13
今天记录一下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.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)
返回结果按照左表的顺序输出:
来源:https://blog.csdn.net/qq_24499417/article/details/84129598
标签:pandas,筛选,条件,数据
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python线程条件变量Condition原理解析
2022-07-23 02:52:06
使用 XML HTTP Request 对象[翻译]
2007-11-07 21:11:00
二级下拉菜单代码
2008-11-01 18:18:00
js实现屏蔽默认快捷键调用自定义事件示例
2023-09-05 09:28:31
Python之批量创建文件的实例讲解
2021-04-10 15:17:08
border边框在浏览器中的渲染方式
2010-03-10 10:52:00
Python二进制文件读取并转换为浮点数详解
2022-12-16 19:10:40
![](https://img.aspxhome.com/file/2023/0/77640_0s.png)
Oracle AS关键字 提示错误
2011-04-18 12:42:00
Python实现微信翻译机器人的方法
2022-11-27 08:35:21
![](https://img.aspxhome.com/file/2023/7/64337_0s.jpg)
python数据分析之公交IC卡刷卡分析
2022-02-10 02:23:56
![](https://img.aspxhome.com/file/2023/5/75145_0s.png)
如何实现优惠打折?
2010-06-03 10:27:00
设计规范有谱么?
2008-06-06 12:28:00
他们是如何不让我的Teleport和Webzip工作的?
2010-07-14 21:06:00
存储过程优缺点分析
2012-04-13 11:39:56
通过T_sql语句向其中一次填入一条数据或一次填入多条数据的方式填充数据
2012-11-30 19:55:34
Dreamweaver4探谜系列(1)
2010-09-05 21:12:00
在oracle 数据库中查看一个sql语句的执行时间和SP2-0027错误
2009-10-09 13:04:00
学习Python3 Dlib19.7进行人脸面部识别
2022-03-18 00:01:30
![](https://img.aspxhome.com/file/2023/5/76035_0s.png)
如何用css制作有趣的按钮
2008-03-17 13:54:00
![](https://img.aspxhome.com/file/UploadPic/20083/17/200831714710377s.gif)
GoLang 逃逸分析的机制详解
2023-08-06 16:46:43
![](https://img.aspxhome.com/file/2023/8/95358_0s.png)