Pandas中两个dataframe的交集和差集的示例代码


Posted in Python onDecember 13, 2020

创建测试数据:

import pandas as pd
import numpy as np
 
#Create a DataFrame
df1 = {
  'Subject':['semester1','semester2','semester3','semester4','semester1',
        'semester2','semester3'],
  'Score':[62,47,55,74,31,77,85]}
 
df2 = {
  'Subject':['semester1','semester2','semester3','semester4'],
  'Score':[90,47,85,74]}
 
 
df1 = pd.DataFrame(df1,columns=['Subject','Score'])
df2 = pd.DataFrame(df2,columns=['Subject','Score'])
 
print(df1)
print(df2)

运行结果:

Pandas中两个dataframe的交集和差集的示例代码

求两个dataframe的交集

intersected_df = pd.merge(df1, df2, how='inner')
print(intersected_df)

Pandas中两个dataframe的交集和差集的示例代码

也可以指定求交集的列:

intersected_df = pd.merge(df1, df2, on=['Subject'], how='inner')
print(intersected_df)

Pandas中两个dataframe的交集和差集的示例代码

求差集

df2-df1:

set_diff_df = pd.concat([df2, df1, df1]).drop_duplicates(keep=False)
print(set_diff_df)

Pandas中两个dataframe的交集和差集的示例代码

df1-df2:

set_diff_df = pd.concat([df1, df2, df2]).drop_duplicates(keep=False)
print(set_diff_df)

Pandas中两个dataframe的交集和差集的示例代码

另一种求差集的方法是:

以df1-df2为例:

df1 = df1.append(df2)
df1 = df1.append(df2)
set_diff_df = df1.drop_duplicates(subset=['Subject', 'Score'],keep=False)
print(set_diff_df)

得到的df1-df2结果是一样的:

Pandas中两个dataframe的交集和差集的示例代码

到此这篇关于Pandas中两个dataframe的交集和差集的示例代码的文章就介绍到这了,更多相关Pandas dataframe交集差集内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python插入排序算法实例分析
Jul 03 Python
Python实现定时备份mysql数据库并把备份数据库邮件发送
Mar 08 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
Apr 23 Python
对Python字符串中的换行符和制表符介绍
May 03 Python
Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
Jul 18 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
Python列表对象实现原理详解
Jul 01 Python
用Python抢火车票的简单小程序实现解析
Aug 14 Python
python 3.6.7实现端口扫描器
Sep 04 Python
python 实现多维数组(array)排序
Feb 28 Python
python状态机transitions库详解
Jun 02 Python
一文搞懂python异常处理、模块与包
Jun 26 Python
使用pandas实现筛选出指定列值所对应的行
Dec 13 #Python
Pandas DataFrame求差集的示例代码
Dec 13 #Python
pandas实现导出数据的四种方式
Dec 13 #Python
python绘图pyecharts+pandas的使用详解
Dec 13 #Python
Pandas对每个分组应用apply函数的实现
Dec 13 #Python
python安装及变量名介绍详解
Dec 12 #Python
在python中对于bool布尔值的取反操作
Dec 11 #Python
You might like
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
PHP写的资源下载防盗链类分享
2014/05/12 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
统计PHP目录中的文件数方法
2019/03/05 PHP
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
JS正则表达式验证数字代码
2014/01/28 Javascript
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
2015/09/10 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
2015/10/16 Javascript
jQuery根据表单name获取值的方法
2016/05/24 Javascript
实用的Vue开发技巧
2019/05/30 Javascript
Array.filter中如何正确使用Async
2020/11/04 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
Python去掉字符串中空格的方法
2014/03/11 Python
Python、Javascript中的闭包比较
2015/02/04 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
Django Admin中增加导出Excel功能过程解析
2019/09/04 Python
使用tensorboard可视化loss和acc的实例
2020/01/21 Python
python线程里哪种模块比较适合
2020/08/02 Python
CSS3 绘制BMW logo实的现代码
2013/04/25 HTML / CSS
纯CSS改变webkit内核浏览器的滚动条样式
2014/04/17 HTML / CSS
九州传奇上机题
2014/07/10 面试题
优秀士兵先进事迹
2014/02/06 职场文书
小学生期末评语
2014/04/21 职场文书
大学生作弊检讨书
2014/09/11 职场文书
单位实习工作证明怎么写
2014/11/02 职场文书
2015年党风廉政建设责任书
2015/01/29 职场文书
难以忽视的真相观后感
2015/06/05 职场文书
保险公司岗前培训工作总结
2015/10/24 职场文书
详解CSS不定宽溢出文本适配滚动
2021/05/24 HTML / CSS
手把手教你从零开始react+antd搭建项目
2021/06/03 Javascript
关于对TypeScript泛型参数的默认值理解
2022/07/15 Javascript