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采集百度百科的方法
Jun 05 Python
Django中传递参数到URLconf的视图函数中的方法
Jul 18 Python
Python selenium如何设置等待时间
Sep 15 Python
Python实现读取txt文件并画三维图简单代码示例
Dec 09 Python
基于python内置函数与匿名函数详解
Jan 09 Python
Python获取指定字符前面的所有字符方法
May 02 Python
Python带动态参数功能的sqlite工具类
May 26 Python
Python中文编码知识点
Feb 18 Python
python画图的函数用法以及技巧
Jun 28 Python
对Django url的几种使用方式详解
Aug 06 Python
python判断无向图环是否存在的示例
Nov 22 Python
Python中文纠错的简单实现
Jul 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/03 PHP
php中函数前加&符号的作用分解
2014/07/08 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
php实现无限级分类查询(递归、非递归)
2016/03/10 PHP
iOS+PHP注册登录系统 PHP部分(上)
2016/12/26 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
Jquery数独游戏解析(一)-页面布局
2010/11/05 Javascript
javascript中运用闭包和自执行函数解决大量的全局变量问题
2010/12/30 Javascript
JavaScript打字小游戏代码
2011/12/26 Javascript
JQuery设置文本框和密码框得到焦点时的样式
2013/08/30 Javascript
为何JS操作的href都是javascript:void(0);呢
2015/11/12 Javascript
JavaScript截取指定长度字符串点击可以展开全部代码
2015/12/04 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
AngularJS中directive指令使用之事件绑定与指令交互用法示例
2016/11/22 Javascript
JavaScript实现经典排序算法之选择排序
2016/12/28 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
JavaScript 隐性类型转换步骤浅析
2018/03/15 Javascript
js中自定义react数据验证组件实例详解
2018/10/19 Javascript
解决vue-cli 打包后自定义动画未执行的问题
2019/11/12 Javascript
[07:57]2018DOTA2国际邀请赛寻真——PSG.LGD凤凰浴火
2018/08/12 DOTA
python使用os模块的os.walk遍历文件夹示例
2014/01/27 Python
Python的条件锁与事件共享详解
2019/09/12 Python
树莓派极简安装OpenCv的方法步骤
2019/10/10 Python
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
通信工程毕业生自荐信
2013/11/01 职场文书
大学自我鉴定
2013/12/20 职场文书
采购求职信
2014/03/17 职场文书
宪法宣传周工作方案
2014/05/26 职场文书
离婚协议书怎么写
2014/09/12 职场文书
民主生活会对照检查材料(统计局)
2014/09/21 职场文书
学校施工安全责任书
2015/01/29 职场文书
法人身份证明书
2015/06/18 职场文书
公司借款担保书
2015/09/22 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
Python数据分析之绘图和可视化详解
2021/06/02 Python
Python 数据结构之十大经典排序算法一文通关
2021/10/16 Python