Pandas DataFrame求差集的示例代码


Posted in Python onDecember 13, 2020

在Pandas中 求差集没有专门的函数。处理办法就是将两个DataFrame追加合并,然后去重。

divident.append(hasThisYearDivident)
noHasThisYearDivident = divident.drop_duplicates(subset='ts_code', keep=False, inplace=True, ignore_index=True)

具体函数用法:

Pandas DataFrame求差集的示例代码

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.append.html#pandas.DataFrame.append

Pandas DataFrame求差集的示例代码

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.drop_duplicates.html#pandas.DataFrame.drop_duplicates

补充示例:Pandas中两个DataFrame的差集

在pandas中,两个DataFrame的差集并没有直接的库内置方法,现在我们希望有一种方法,就像python中set内置的求差集一样,来找到两个DataFrame的差集。

>>> a=set((1,2,3))
>>> a
{1, 2, 3}
>>> b=set((2,3,4))
>>> b
{2, 3, 4}
>>> a-b
{1}

上面代码片段是对set的内置求差集方法的回顾,现在我们希望能有类似的方法来找两个DataFrame的差集。

解决思路是这样的:

对于有同样Index的a,b两个DataFrame,如果现在要求a对b的差集,那么可以(1)连续两次扩充a,使用append方法(2)然后使用drop_duplicates方法对a进行去重,并且参数keep=False。原理很简单,也很巧妙,连续扩充2次a,那么新扩充完后的DataFrame中来自b的row肯定是重复的,去重时候,b全部被删除,与此同时,a中跟b重复的row也会顺带着被删除。

代码实现:

>>> import pandas as pd
>>> data_a={'state':[1,1,2],'pop':['a','b','c']}
>>> data_b={'state':[1,2,3],'pop':['b','c','d']}
>>> a=pd.DataFrame(data_a)
>>> b=pd.DataFrame(data_b)
>>> a
  state pop
0   1  a
1   1  b
2   2  c
>>> b
  state pop
0   1  b
1   2  c
2   3  d
>>> a=a.append(b)
>>> a=a.append(b)
>>> a
  state pop
0   1  a
1   1  b
2   2  c
0   1  b
1   2  c
2   3  d
0   1  b
1   2  c
2   3  d
>>> a.drop_duplicates(subset=['state','pop'],keep=False)
  state pop
0   1  a

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

Python 相关文章推荐
Python常用的文件及文件路径、目录操作方法汇总介绍
May 21 Python
Python检测一个对象是否为字符串类的方法
May 21 Python
django之常用命令详解
Jun 30 Python
利用Python破解验证码实例详解
Dec 08 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
Jun 13 Python
python http基本验证方法
Dec 26 Python
python matplotlib画图库学习绘制常用的图
Mar 19 Python
python字符串替换第一个字符串的方法
Jun 26 Python
用Python实现将一张图片分成9宫格的示例
Jul 05 Python
Python爬虫实现“盗取”微信好友信息的方法分析
Sep 16 Python
python中return的返回和执行实例
Dec 24 Python
Lombok插件安装(IDEA)及配置jar包使用详解
Nov 04 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
python 基于opencv 绘制图像轮廓
Dec 11 #Python
python通过cython加密代码
Dec 11 #Python
You might like
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
php读取csv文件并输出的方法
2015/03/14 PHP
yii添删改查实例
2015/11/16 PHP
javaScript parseInt字符转化为数字函数使用小结
2009/11/05 Javascript
JavaScript 设计模式 安全沙箱模式
2010/09/24 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
2012/01/15 Javascript
js arguments,jcallee caller用法总结
2013/11/30 Javascript
javascript中全局对象的parseInt()方法使用介绍
2013/12/19 Javascript
js获取内联样式的方法
2015/01/27 Javascript
js实现图片和链接文字同步切换特效的方法
2015/02/20 Javascript
JavaScript实现网页对象拖放功能的方法
2015/04/15 Javascript
JQuery限制复选框checkbox可选中个数的方法
2015/04/20 Javascript
js兼容火狐显示上传图片预览效果的方法
2015/05/21 Javascript
JavaScript实现select添加option
2015/07/03 Javascript
JS实现的简易拖放效果示例
2016/12/29 Javascript
jQuery密码强度验证控件使用详解
2017/01/05 Javascript
写一个移动端惯性滑动&回弹Vue导航栏组件 ly-tab
2018/03/06 Javascript
js实现下拉框二级联动
2018/12/04 Javascript
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
[02:28]DOTA2亚洲邀请赛 LGD战队巡礼
2015/02/03 DOTA
[04:15]DOTA2-DPC中国联赛1月19日Recap集锦
2021/03/11 DOTA
Python 自动补全(vim)
2014/11/30 Python
python获取指定路径下所有指定后缀文件的方法
2015/05/26 Python
替换python字典中的key值方法
2018/07/06 Python
python批量读取文件名并写入txt文件中
2020/09/05 Python
利用Python绘制有趣的万圣节南瓜怪效果
2019/10/31 Python
如何搭建pytorch环境的方法步骤
2020/05/06 Python
澳大利亚家庭花园和DIY工具网店:VidaXL
2019/05/03 全球购物
学生实习介绍信
2014/01/15 职场文书
艺术设计专业求职自荐信
2014/05/19 职场文书
教师自我剖析材料(群众路线)
2014/09/29 职场文书
党员考试作弊检讨书1000字
2015/02/16 职场文书
乔布斯辞职信(中英文对照)
2015/05/12 职场文书
2015年度个人工作总结报告
2015/10/24 职场文书
入党心得体会
2019/06/20 职场文书
Python OpenGL基本配置方式
2022/05/20 Python