- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
如何找出两个数据框中同名列之间的区别?我的意思是我的数据框 A 有一个名为 X 的列,数据框 B 有一个名为 X 的列,如果我执行 pd.merge(A, B, on=['X'])
,我会得到A 和 B 的共同 X 值,但如何获得“非共同”值?
最佳答案
如果您将合并类型更改为 how='outer'
和 indicator=True
这将添加一列来告诉您值是左/右/右仅:
In [2]:
A = pd.DataFrame({'x':np.arange(5)})
B = pd.DataFrame({'x':np.arange(3,8)})
print(A)
print(B)
x
0 0
1 1
2 2
3 3
4 4
x
0 3
1 4
2 5
3 6
4 7
In [3]:
pd.merge(A,B, how='outer', indicator=True)
Out[3]:
x _merge
0 0.0 left_only
1 1.0 left_only
2 2.0 left_only
3 3.0 both
4 4.0 both
5 5.0 right_only
6 6.0 right_only
7 7.0 right_only
然后您可以在 _merge
col 上过滤生成的合并 df:
In [4]:
merged = pd.merge(A,B, how='outer', indicator=True)
merged[merged['_merge'] == 'left_only']
Out[4]:
x _merge
0 0.0 left_only
1 1.0 left_only
2 2.0 left_only
您还可以使用 isin
并对掩码取反来查找不在 B 中的值:
In [5]:
A[~A['x'].isin(B['x'])]
Out[5]:
x
0 0
1 1
2 2
关于python - Pandas (Python)中的 "Anti-merge",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38242368/
在数据库中,您有一个带有位字段的表,我们将该字段称为Active 在应用程序中你有一个 bool 变量,我们称之为NotActive 每次从表中获取字段时,在应用程序中您都会切换变量的含义。 NotA
我在我的 iPhone 应用程序中查看一些动画,感觉它有点难看。然后我明白了:它只是不通过子像素状态进行动画处理。 所以,如果我使用通常的+beginAnimations/+commitAnimati
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我记得在某处看到过有关此问题的辩论,并且目前正在考虑删除我正在处理的系统中的每个业务对象都继承自的基础对象。它包含一些属性、一些数据库逻辑和一些构造函数逻辑。 这是一种反模式,还是陪审团还在外面?有一
我正在从事一个人脸识别项目,我可以首先注册自己,然后启动一个识别脚本,该脚本将启动我的网络摄像头,它会识别我自己。我正在关注这个 article它的工作非常好。 我注意到的是,如果我将我的照片展示给相
我在软编码反模式上感到Wikipedia entry简洁而令人困惑。那么什么是软编码?在什么设置下,这是不好的做法(反模式)?另外,什么时候可以认为它是有益的,如果是这样,应该如何实施? 最佳答案
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 3年前关闭。 Improve t
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想改善这个问题吗?更新问题,以便将其作为on-topic
我正在努力让自己深入了解 JavaScript,目前正在学习它。 在数组中,我一直在读到下面是一个反模式: var a = new Array("a", "b", "c"); 下面的不是: var a
我正在研究著名的 SQLzoos 的第一个问题,并且正在研究 using Null 部分:http://sqlzoo.net/wiki/Using_Null 问题是: List the teacher
在 Java 中,有 Graphics2D.fillRect(x, y, width, height) 函数。在我的程序中,我正在寻找类似但完全相反的东西。 我需要填充屏幕上的所有内容,除了这个特定的
我正在尝试实现一种算法,从一组 n 个元素中获取 k 个元素的所有组合,其中两个连续组合之间的差异被最大化(类似反向格雷码)。换句话说,应该对组合进行排序以避免元素连续出现两次,这样就不会不必要地区分
来自 http://ark.intel.com我可以找到支持它的处理器。但是如何以编程方式检测它呢? (C++,C#)。 对于 Intel 的芯片组,我发现 FVEC2(特征向量寄存器)用于检测是否启
我正在阅读 O'Reilly 的“Android 编程”一书,我正在努力研究从第 99 页开始的“覆盖和回调”部分。他们将此作为优秀代码的示例: public class MyModel {
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
搜索示例 搜索 123,网页地址为:https://www.virustotal.com/gui/search/123/comments 请求接口 GET /ui/search?limit=
程序员经常会注意到他在几个地方有一些非常相似的代码。假设这里有类似代码的实例。 (为了清晰起见,这是一个玩具示例。在野外,这种反模式通常不会出现在如此简单的代码中) function showLogi
我使用了 highcharts 库中的基本折线图,但我认为线条不够平滑。 有可能改进吗? 我的代码: chart: { type:'line',
创建 JavaFX 场景时,我传入 SceneAntialiasing.BALANCED 作为参数,但在我的笔记本电脑上它给了我这个警告: WARNING: System can't support
我是一名优秀的程序员,十分优秀!