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获取任意xml节点值的方法
May 05 Python
Python图算法实例分析
Aug 13 Python
读写json中文ASCII乱码问题的解决方法
Nov 05 Python
Python 处理数据的实例详解
Aug 10 Python
Python中Scrapy爬虫图片处理详解
Nov 29 Python
Python socket实现多对多全双工通信的方法
Feb 13 Python
python 有效的括号的实现代码示例
Nov 11 Python
Python 复平面绘图实例
Nov 21 Python
在Pytorch中计算自己模型的FLOPs方式
Dec 30 Python
Python使用requests xpath 并开启多线程爬取西刺代理ip实例
Mar 06 Python
浅谈OpenCV中的新函数connectedComponentsWithStats用法
Jul 05 Python
Python configparser模块封装及构造配置文件
Aug 07 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
基于PHP服务端图片生成缩略图的方法详解
2013/06/20 PHP
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
php实现与erlang的二进制通讯实例解析
2014/07/23 PHP
php ci框架中加载css和js文件失败的原因及解决方法
2014/07/29 PHP
TNC vs IO BO3 第一场2.13
2021/03/10 DOTA
JavaScript开发规范要求(规范化代码)
2010/08/16 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
2013/11/20 Javascript
获得Javascript对象属性个数的示例代码
2013/11/21 Javascript
JavaScript简单下拉菜单实例代码
2015/09/07 Javascript
什么是JavaScript注入攻击?
2016/09/14 Javascript
使用Bootstrap美化按钮实例代码(demo)
2017/02/03 Javascript
jQuery使用zTree插件实现可拖拽的树示例
2017/09/23 jQuery
Node.js readline模块与util模块的使用
2018/03/01 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
vue 实现Web端的定位功能 获取经纬度
2019/08/08 Javascript
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
2019/08/20 Javascript
vue使用showdown并实现代码区域高亮的示例代码
2019/10/17 Javascript
在vue中使用回调函数,this调用无效的解决
2020/08/11 Javascript
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Django中更新多个对象数据与删除对象的方法
2015/07/17 Python
Python创建xml文件示例
2017/03/22 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
2020/04/08 Python
python3.9实现pyinstaller打包python文件成exe
2020/12/13 Python
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
大学生职业生涯规划书模板
2014/01/03 职场文书
公司担保书范文
2014/05/21 职场文书
社会工作专业求职信
2014/07/15 职场文书
企业爱岗敬业演讲稿
2014/09/04 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
关于倡议书的范文
2015/04/29 职场文书
肖申克的救赎观后感
2015/06/02 职场文书
2016中学教师读书心得体会
2016/01/13 职场文书
Vue Element UI自定义描述列表组件
2021/05/18 Vue.js
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js
Go语言基础map用法及示例详解
2021/11/17 Golang