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使用KNN算法手写体识别
Feb 01 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
Mar 15 Python
python 字典中取值的两种方法小结
Aug 02 Python
使用Python实现在Windows下安装Django
Oct 17 Python
python语言元素知识点详解
May 15 Python
Python实现最常见加密方式详解
Jul 13 Python
python 自定义装饰器实例详解
Jul 20 Python
Python之变量类型和if判断方式
May 05 Python
Python 字节流,字符串,十六进制相互转换实例(binascii,bytes)
May 11 Python
python爬虫中PhantomJS加载页面的实例方法
Nov 12 Python
python中复数的共轭复数知识点总结
Dec 06 Python
python数字图像处理:图像的绘制
Jun 28 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中session退出登陆问题
2014/02/27 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
2015/01/07 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
常用的javascript function代码
2008/05/23 Javascript
JavaScript面向对象之体会[总结]
2008/11/13 Javascript
javascript 获取select下拉列表值的代码
2009/09/07 Javascript
十个优秀的Ajax/Javascript实例网站收集
2010/03/31 Javascript
Js中获取frames中的元素示例代码
2013/07/30 Javascript
JavaScript—window对象使用示例
2013/12/09 Javascript
Node.js中安全调用系统命令的方法(避免注入安全漏洞)
2014/12/05 Javascript
javascript实现验证身份证号的有效性并提示
2015/04/30 Javascript
JavaScript操作class和style样式代码详解
2016/02/13 Javascript
jquery trigger函数执行两次的解决方法
2016/02/29 Javascript
基于JavaScript实现鼠标箭头移动图片跟着移动
2016/08/30 Javascript
JavaScript实现前端分页控件
2017/04/19 Javascript
微信小程序 地图map实例详解
2017/06/07 Javascript
微信小程序WebSocket实现聊天对话功能
2018/07/06 Javascript
详解如何用webpack4从零开始构建react开发环境
2019/01/27 Javascript
详解VS Code使用之Vue工程配置format代码格式化
2019/03/20 Javascript
Jquery 动态添加元素并添加点击事件实现过程解析
2019/10/12 jQuery
解决vue+ element ui 表单验证有值但验证失败问题
2020/01/16 Javascript
Windows下安装Scrapy
2018/10/17 Python
python之cv2与图像的载入、显示和保存实例
2018/12/05 Python
Python学习笔记之集合的概念和简单使用示例
2019/08/22 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
使用python-Jenkins批量创建及修改jobs操作
2020/05/12 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
python 进程池pool使用详解
2020/10/15 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
兰芝美国网上商城:购买LANEIGE睡眠面膜等
2017/06/30 全球购物
俄罗斯第一家篮球店:StreetBall
2020/07/30 全球购物
Blue Nile中国官网:全球知名的钻石和珠宝网络零售商
2020/03/22 全球购物
党员心得体会范文2016
2016/01/23 职场文书
建房合同协议书
2016/03/21 职场文书
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL