【问题标题】:Compare two columns with pandas [duplicate]用熊猫比较两列[重复]
【发布时间】:2020-07-27 23:22:40
【问题描述】:

我有两个数据框:df1、df2

name     gender
John      1
David     1 
Lilly     0
Young     0
Lisa      0
Wang      1

 name     gender
 Andy      1
 Lilly     1 
 Wang     0
 Mina    0
 John     0
 Claire      1

这两个数据框都是名称-性别对。我正在尝试在两个数据框中检测相同的名称但分配了不同的性别(例如,df1 中的礼来被分配为 0,而在 df2 中被分配了 1)。我想打印一个数据框只显示。

我用过代码

df2[df2[df1['name'] == df2['name'] and df2['gender'] != df1['gender']]

此代码不会返回错误,而是会一直运行。我想知道我做错了什么。有没有可以解决这个问题的 pandas 命令?

【问题讨论】:

标签: python pandas dataframe


【解决方案1】:

merge 过滤然后drop

df2.merge(df1,on='name',suffixes=('','d')).query('gender!=genderd').drop('genderd',1)
   name  gender
0  Lilly       1
1   Wang       0
2   John       0

【讨论】:

    猜你喜欢
    • 2021-12-09
    • 1970-01-01
    • 2017-12-14
    • 2014-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-14
    相关资源
    最近更新 更多