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实现自动重启本程序的方法
Jul 09 Python
Python 正则表达式入门(初级篇)
Dec 07 Python
python制作爬虫爬取京东商品评论教程
Dec 16 Python
python使用tkinter实现简单计算器
Jan 30 Python
python网络爬虫学习笔记(1)
Apr 09 Python
Python字符串逆序的实现方法【一题多解】
Feb 18 Python
一篇文章彻底搞懂Python中可迭代(Iterable)、迭代器(Iterator)与生成器(Generator)的概念
May 13 Python
django mysql数据库及图片上传接口详解
Jul 18 Python
Python pip配置国内源的方法
Feb 14 Python
python_mask_array的用法
Feb 18 Python
Python基于codecs模块实现文件读写案例解析
May 11 Python
python生成xml时规定dtd实例方法
Sep 21 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&MYSQL分页原理及实现
2007/01/02 PHP
简单的PHP留言本实例代码
2010/05/09 PHP
关于PHP语言构造器介绍
2013/07/08 PHP
PHP的变量类型和作用域详解
2014/03/12 PHP
php匹配字符中链接地址的方法
2014/12/22 PHP
CI框架附属类用法分析
2018/12/26 PHP
JS 的应用开发初探(mootools)
2009/12/19 Javascript
麻雀虽小五脏俱全 Dojo自定义控件应用
2010/09/04 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
2012/12/26 Javascript
jQuery使用动态渲染表单功能完成ajax文件下载
2013/01/15 Javascript
jQuery aminate方法定位到页面具体位置
2013/12/26 Javascript
比较不错的JS/JQuery显示或隐藏文本的方法
2014/02/13 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
一个css与js结合的下拉菜单支持主流浏览器
2014/10/08 Javascript
jQuery子属性过滤选择器用法分析
2015/02/10 Javascript
jquery实现点击label的同时触发文本框点击事件的方法
2015/06/05 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
2015/10/25 Javascript
jquery实现倒计时效果
2015/12/14 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
2016/01/07 Javascript
jQuery插件ImageDrawer.js实现动态绘制图片动画(附源码下载)
2016/02/25 Javascript
解决vue的router组件component在import时不能使用变量问题
2020/07/26 Javascript
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
2016/09/21 Python
python 删除非空文件夹的实例
2018/04/26 Python
python集合能干吗
2020/07/19 Python
Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决
2020/09/18 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
CSS3实现网站商品展示效果图
2020/01/18 HTML / CSS
Roxy美国官网:澳大利亚冲浪、滑雪健身品牌
2016/07/30 全球购物
CLR与IL分别是什么含义
2016/08/23 面试题
运动会广播稿200字
2014/01/15 职场文书
年度考核自我评价
2014/01/25 职场文书
禁止酒驾标语
2014/06/25 职场文书
高中班主任心得体会
2016/01/07 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers