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实现web端用户登录和注册功能的教程
Apr 30 Python
Python的装饰器模式与面向切面编程详解
Jun 21 Python
Odoo中如何生成唯一不重复的序列号详解
Feb 10 Python
python写入并获取剪切板内容的实例
May 31 Python
Django多数据库的实现过程详解
Aug 01 Python
python 计算积分图和haar特征的实例代码
Nov 20 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
Apr 20 Python
Python中and和or如何使用
May 28 Python
Python实现http接口自动化测试的示例代码
Oct 09 Python
用python-webdriver实现自动填表的示例代码
Jan 13 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 Python
Pygame Time时间控制的具体使用详解
Nov 17 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中的 == 运算符进行字符串比较
2006/11/26 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
laravel 关联关系遍历数组的例子
2019/10/10 PHP
Extjs中DisplayField的日期或者数字格式化扩展
2010/09/03 Javascript
jsvascript图像处理—(计算机视觉应用)图像金字塔
2013/01/15 Javascript
js操作CheckBoxList实现全选/反选(在客服端完成)
2013/02/02 Javascript
浅谈js多维数组和hash数组定义和使用
2016/07/27 Javascript
轻松掌握JavaScript中介者模式
2016/08/26 Javascript
无阻塞加载js,防止因js加载不了影响页面显示的问题
2016/12/18 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
Mac中安装nvm的教程分享
2017/12/11 Javascript
JS抛物线动画实例制作
2018/02/24 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
echarts多条折线图动态分层的实现方法
2019/05/24 Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
2020/05/24 Javascript
Javascript基于OOP实实现探测器功能代码实例
2020/08/26 Javascript
[44:15]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第二局
2016/03/06 DOTA
python开发中module模块用法实例分析
2015/11/12 Python
wxpython中Textctrl回车事件无效的解决方法
2016/07/21 Python
对python 自定义协议的方法详解
2019/02/13 Python
Python3使用TCP编写一个简易的文件下载器功能
2019/05/08 Python
python下载库的步骤方法
2019/10/12 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
2020/06/23 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
日本著名的服饰鞋帽综合类购物网站:MAGASEEK
2019/01/09 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
新闻编辑自荐信
2013/11/03 职场文书
交通安全寄语大全
2014/04/08 职场文书
高中班主任评语大全
2014/04/25 职场文书
敬老院院长事迹材料
2014/05/21 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
乡村教师党员四风问题对照检查材料思想汇报
2014/10/08 职场文书
创业计划书之闲置物品置换中心
2019/12/25 职场文书
CocosCreator ScrollView优化系列之分帧加载
2021/04/14 Python