【问题标题】:How to match two columns from different Dataframes and with different length?如何匹配来自不同数据框且长度不同的两列?
【发布时间】:2019-08-26 13:58:52
【问题描述】:

我已经生成了 df1 和 df2。

df1

df2

两个数据框都有一个共同的列,df1[TB_DIV]df2[DIV]。 我想生成一个新的 df3,其中包含 df1 中的所有信息,这些信息由不在 df1 中的所有 df2[DIV] 过滤。

我尝试使用 .isin 函数通过 df2 信息过滤 df1,但无法获得预期值。

m = DIV_LIST.DIV.isin(DIV_TABLE.TB_DIV)
DIV_LIST1 = DIV_LIST[m]

我得到了一个空的 df3,在某些情况下由于长度不匹配而出错。

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    尝试这样处理:

    df1.loc[df1['TB_DIV'].isin(df2['DIV'])]
    

    要获取那些不在的,请使用:

    df1.loc[~df1['TB_DIV'].isin(df2['DIV'])]
    

    【讨论】:

      猜你喜欢
      • 2021-12-12
      • 2021-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-16
      • 2015-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多