pandas 比较两个表数据是否相同(浅谈pandas筛选出表中满足另一个表所有条件的数据方法)
pandas 比较两个表数据是否相同
浅谈pandas筛选出表中满足另一个表所有条件的数据方法今天记录一下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) |
返回结果按照左表的顺序输出:
以上这篇浅谈pandas筛选出表中满足另一个表所有条件的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/qq_24499417/article/details/84129598
- elasticsearch 索引创建过程(使用elasticsearch定时删除索引数据)
- 网站数据迁移到新服务器(网站服务器迁移数据需要注意什么?)
- sqlserver数据库基本操作(SQL Server四个系统表的知识讲解)
- docker 容器运行的数据在哪里(docker容器的几种存储详解)
- sqlserver 插入数据的触发器(SQL server 表数据改变触发发送邮件的方法)
- python中怎么连接mysql(python远程连接MySQL数据库)
- 织梦数据库连接失败是什么意思(织梦上传服务器后数据连接失败问题的解决方法)
- 微信小程序开发如何实现自动保存(微信小程序开发实用技巧之数据传递和存储)
- 数据库服务器是否存在或是否启动(Servermanager启动连接数据库错误如何解决)
- SQL Server将数据导出到SQL脚本文件
- python中的数据类型和数字类型(Python数据类型之Number数字操作实例详解)
- zabbix客户端看什么网络监控数据(分布式监控系统之Zabbix主动、被动及web监控的过程详解)
- 查询SQL SERVER中某个数据库的每个表的数据量和每行记录所占用空间
- Sql Server系统数据库的作用
- 网站数据服务器数据迁移(网站服务器迁移方案)
- 5.6以上版本mysql数据复制(MySQL5.7并行复制原理及实现)
- 这个全椒人被通报表彰,看看你认识吗(这个全椒人被通报表彰)
- 全椒人,38年集体回忆 1980-2018 ,看完不要哭(全椒人38年集体回忆)
- 董元奔吟咏历代文人 1012新旧均可 全椒人张璪 1022 -1093(董元奔吟咏历代文人)
- 泪目 这位 刷屏 的英雄,是全椒人的骄傲(泪目这位刷屏)
- 人从众 火炎焱 全椒再现 正月十六走太平 的魅力(人从众火炎焱全椒再现)
- 官宣 全椒籍明星许海峰 奚秀兰 方芳 王璐瑶携手回家 走太平(全椒籍明星许海峰)
热门推荐
- 阿里云服务器远程连不上(阿里云控制台重置密码重启后无法访问服务器的原因及解决方法)
- php工作原理及功能(php设计模式之适配器模式原理、用法及注意事项详解)
- dedecms授权查询(解析dedeCMS验证码的实现代码)
- dedecms标签分类(Dedecms程序SEO常用的列表标签调用代码集合 dedecms优化)
- 微信html5页面怎么制作(HTML5中外部浏览器唤起微信分享功能的代码)
- linux查python进程(linux查找当前python解释器的位置方法)
- 怎么python爬取网页图片(详解Python静态网页爬取获取高清壁纸)
- 如何选择适合自己的云服务器(选择云服务器配置需要注意什么?)
- 云ip内网虚拟机使用(新网云主机如何使用密钥进行登陆)
- 如何提高织梦dedecms的安全性(详解织梦DedeCMS幻灯片调用图片显示模糊的原因以及解决办法)