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编写生成树状结构的文件目录的脚本的教程
May 04 Python
使用Python3编写抓取网页和只抓网页图片的脚本
Aug 20 Python
在Python中通过threading模块定义和调用线程的方法
Jul 12 Python
python爬虫框架scrapy实战之爬取京东商城进阶篇
Apr 24 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
Apr 18 Python
python删除本地夹里重复文件的方法
Nov 19 Python
使用 Python 实现文件递归遍历的三种方式
Jul 18 Python
Pandas实现dataframe和np.array的相互转换
Nov 30 Python
Python的控制结构之For、While、If循环问题
Jun 30 Python
python进度条显示-tqmd模块的实现示例
Aug 23 Python
Python中使用Lambda函数的5种用法
Apr 01 Python
python必学知识之文件操作(建议收藏)
May 30 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表单转换textarea换行符的方法
2010/09/10 PHP
php去除HTML标签实例
2013/11/06 PHP
PHP中mysqli_affected_rows作用行数返回值分析
2014/12/26 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
jquery 必填项判断表单是否为空的方法
2008/09/14 Javascript
csdn 批量接受好友邀请
2009/02/19 Javascript
jquery ajax 检测用户注册时用户名是否存在
2009/11/03 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
从盛大通行证上摘下来的身份证验证js代码
2011/01/11 Javascript
javascript 进阶篇1 正则表达式,cookie管理,userData
2012/03/14 Javascript
原生javascript和jquery判断浏览器版本等信息
2013/07/04 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
JS实现局部选择打印和局部不选择打印
2014/04/03 Javascript
理解Javascript文件动态加载
2016/01/29 Javascript
详解Javacript和AngularJS中的Promises
2016/02/09 Javascript
javascript HTML5文件上传FileReader API
2020/03/27 Javascript
JavaScript检测原始值、引用值、属性
2016/06/20 Javascript
JS验证图片格式和大小并预览的简单实例
2016/10/11 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
jQuery实现两列等高并自适应高度
2016/12/22 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
vue-cli 打包后提交到线上出现 "Uncaught SyntaxError:Unexpected token" 报错
2018/11/06 Javascript
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
Python对切片命名的实现方法
2018/10/16 Python
python去除拼音声调字母,替换为字母的方法
2018/11/28 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
解决python xx.py文件点击完之后一闪而过的问题
2019/06/24 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
Python自动化办公Excel模块openpyxl原理及用法解析
2020/11/05 Python
阿联酋航空假期:Emirates Holidays
2018/03/20 全球购物
美国帽子俱乐部商店:Hat Club
2019/07/05 全球购物
普通员工辞职信
2014/01/17 职场文书
小学优秀教师事迹材料
2014/12/16 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server
python munch库的使用解析
2021/05/25 Python