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的Flask框架与数据库连接的教程
Apr 20 Python
python读取二进制mnist实例详解
May 31 Python
Python中音频处理库pydub的使用教程
Jun 07 Python
python 连接sqlite及简单操作
Jun 30 Python
Python Requests库基本用法示例
Aug 20 Python
Python中bisect的使用方法
Dec 31 Python
python 字典item与iteritems的区别详解
Apr 25 Python
Python获取浏览器窗口句柄过程解析
Jul 25 Python
python raise的基本使用
Sep 10 Python
将不规则的Python多维数组拉平到一维的方法实现
Jan 11 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
Feb 06 Python
浅谈怎么给Python添加类型标注
Jun 08 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 has encountered an Access Violation
2007/01/15 PHP
常见的PHP五种设计模式小结
2011/03/23 PHP
php网上商城购物车设计代码分享
2012/02/15 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
jQuery参数列表集合
2011/04/06 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
JS函数重载的解决方案
2014/05/13 Javascript
JsRender实用入门教程
2014/10/31 Javascript
工作中常用的js、jquery自定义扩展函数代码片段汇总
2016/12/22 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
10分钟上手vue-cli 3.0 入门介绍
2018/04/04 Javascript
vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法
2018/09/05 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
在RedHat系Linux上部署Python的Celery框架的教程
2015/04/07 Python
Python中逗号的三种作用实例分析
2015/06/08 Python
Python中map,reduce,filter和sorted函数的使用方法
2015/08/17 Python
轻松掌握python设计模式之访问者模式
2016/11/18 Python
python字符串常用方法
2018/06/14 Python
python 实现list或string按指定分段
2019/12/25 Python
基于plt.title无法显示中文的快速解决
2020/05/16 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
python文件读取失败怎么处理
2020/06/23 Python
Python 如何查找特定类型文件
2020/08/17 Python
通过canvas转换颜色为RGBA格式及性能问题的解决
2019/11/22 HTML / CSS
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
美国农场商店:Blain’s Farm & Fleet
2020/01/17 全球购物
师范应届生语文教师求职信
2013/10/29 职场文书
小学生保护环境倡议书
2014/05/15 职场文书
计生专干事迹
2014/05/28 职场文书
会员卡清退活动总结
2014/08/27 职场文书
工作岗位职责范本
2015/02/15 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
获奖感言一句话
2015/07/31 职场文书
2015年中秋放假通知范文
2015/08/18 职场文书
曾国藩励志经典名言37句,蕴含哲理
2019/10/14 职场文书