python 两个dataFrame取不同部分
一、列表:
一般两个列表取不同我们常用列表推导式:
A = [1,2,3,4]
B = [3,4,5,6]
提取两列表相同元素:
both = [i for i in A if i in B]
提取A特有的元素:
diff_A = [i for i in A if i not in B]
提取A,B各自独有的元素:
diff_both = [i for i in (A+B) if i not in both]
当然还可使用集合的特性进行筛选,更加的简便:
并集(|),交集(&),差集(-)
如提取A,B各自独有的元素,即对称集:
set(A)^set(B)
二、数据框
实现的方法很多,其中一个方法就是取出两个数据框需要比较的列,利用上面介绍的方法得到不同的元素,然后从数据框中取出这部分。
例如有如下数据框,需要得到df1与df2相比,df1中独有部分
然后利用merge函数达成目的:
这里总结出一个更加简单的方法:
def data_diff(df1,df2):'''df: 返回df1的index中不包含df2 index部分'''df = pd.merge(left=df1, right=pd.DataFrame(df2.index,columns=["ID"]),how="left",indicator=True,left_index=True,right_on="ID")df = df.loc[df._merge == "left_only",:].drop(columns=["_merge","ID"])return df
当然这里是匹配的index,可根据实际情况做相应的调整,两行代码实现比较两数据框的不同。
python 两个dataFrame取不同部分相关推荐
- python两个dataframe求差集_spark计算两个DataFrame的差集、交集、合集
spark 计算两个dataframe 的差集.交集.合集,只选择某一列来对比比较好.新建两个 dataframe : import org.apache.spark.{SparkConf, Spar ...
- python两数相加取_Leetcode_两数相加_Python
小编从今天起要开始分享一些Leedcode代码,通过好好练习编程能力,争取以后找一份好工作. 题目:两数相加 # Definition for singly-linked list. # class ...
- python两个list取交集_使用 Python 获取两个列表的交集、并集、差集的常用方法 | Jin''''s Blog...
在数据处理中经常需要使用 Python 来获取两个列表的交集,并集和差集.在 Python 中实现的方法有很多,我平时只使用一两种我所熟悉的,但效率不一定最高,也不一定最优美,所以这次想把常用的方法都 ...
- python两数相加取_两数相加(Python3)
提出问题: 给出两个非空的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储一位数字.如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的 ...
- python两数相加取相同的_python如何实现多个文件相同位置的数值相加
我有多个文件需要整合,输出所有位点的A值,B值的总和,我通过多步shell已经实现了,但是我想知道用python应该怎么实现. 我的想法是先得到所有位点的总集,然后依次遍历文件,如果文件中有该位点,就 ...
- python读取前两列数据对比_使用Python的Dataframe取两列时间值相差一年的所有行方法...
在使用Python处理数据时,经常需要对数据筛选. 这是在对时间筛选时,判断两列时间是否相差一年,如果是,则返回符合条件的所有列. data原始数据: data[map(lambda x:dateti ...
- python提取两列数据对比_使用Python的Dataframe取两列时间值相差一年的所有行方法...
在使用Python处理数据时,经常需要对数据筛选. 这是在对时间筛选时,判断两列时间是否相差一年,如果是,则返回符合条件的所有列. data原始数据: data[map(lambda x:dateti ...
- python中的join函数连接dataframe_python pandas处理CSV文件并使用join()方法拼接两个dataframe...
本问主要讲解如何拼接两个dataframe import pandas as pd import numpy as np import matplotlib.pyplot as plt from py ...
- python 找出两个dataframe中不同的元素
pandas从Excel中读取数据,数据格式为dataframe格式 用for循环对进行两个列的数据比较想找出不同的元素时,发现数据是一样的,但是比较结果却是相同和不同的都存在(总之就是不是我以为的效 ...
最新文章
- HashMap集合遍历的五种方式
- redis怎么不让存byte_redis用bitfield存储的问题
- 1-6-RHEL7用户管理和如何恢复root密码
- Effective C++ 11 在operator=中处理“自我赋值” 笔记
- Docker:Docker的简介、安装、使用方法之详细攻略
- CentOS 7 install Zabbix3.4
- flink中的java匿名函数修改为实名函数
- MySQL列类型之——数值类型
- php如何递归算法,详细的介绍一下PHP递归算法_PHP教程
- pomelo mysql_pomelo连接mySQL
- Spring中的Service/DAO/DTO
- RS485芯片/RS485通讯芯片/RS485通讯接口芯片UN3485
- 通过Vue+flvjs在HTML5中播放flv格式视频文件—demo及api
- wpscan扫描的简单介绍(对WordPress的扫描CMS)
- 超级计算机模拟生命起源,超级计算机模拟生命起源
- softlockup原理分析
- ESP-01 8266转接板改造
- npm是什么东西?npm是干什么的
- 每日小型简短新闻12条 11月30日 星期一
- 相似图搜索网站(以图找图)
热门文章
- matlab仿真光场成像,光场图像重构算法仿真
- 删除 Windows10系统 “此电脑” 中的 “3D对象” 等文件夹
- CentOS软件卸载和依赖
- VSIX(VSCode插件)安装方法
- 2018上半年游戏行业DDoS态势报告 1
- 零基础入门STM32编程(三)
- 大话设计模式之爱你一万年:第三章 创建型模式:工厂模式:我想让你坐在宝马里笑:3.工厂模式之简单工厂模式
- 《工程伦理》网课第一章课后习题答案
- 铁道部12306后台技术框架、完整异常栈信息以及技术缺点和漏洞
- 用c语言编写因子分析程序,相应分析的R包ca和mca,cca,RDA的R实现整理