【问题标题】:Comparing columns from two data frames比较两个数据框的列
【发布时间】:2018-09-07 01:21:58
【问题描述】:

我对 Python 比较陌生。如果我有以下两种类型的数据帧,让我们分别说 df1 和 df2。

Id Name Job                Name Salary Location
1  Jim  Tester             Jim  100    Japan
2  Bob  Developer          Bob  200    US
3  Sam  Support            Si   300    UK
                           Sue  400    France

我想将 df2 中的“姓名”列与 df1 进行比较,这样如果 df1 中不存在人名(在 df2 中),则 df2 中的该行将被输出到另一个数据帧。所以对于上面的例子,输出将是:

       Name Salary Location
       Si   300    UK
       Sue  400    France  

Si 和 Sue 被输出,因为它们不存在于 df1 的“名称”列中。

【问题讨论】:

标签: python python-3.x pandas data-analysis


【解决方案1】:

您可以使用布尔索引:

res = df2[~df2['Name'].isin(df1['Name'].unique())]

我们通过pd.Series.unique 使用散列作为优化,以防您在df1 中有重复名称。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多