@Robin_TY 请问pandas中有没有获取两个DataFrame的差分的方法

请问老师:pandas中有没有获取两个DataFrame的差分的方法,即获取一个dataframe中有的但在另一个dataframe中没有的行
例如两个DataFrame,df1 和 df2
df1:
   col1
    a
    b
 
df2:
  col1  col2
    a      1
    c      3
 
df1 对 df2 的差分就是
col1
 b

Robin_TY - PhD@CSU,研究方向:计算机视觉,模式识别

赞同来自: 子秦1117 fish

应该没有直接的操作,至少我还没遇到过。不过可以转换下思路。分两步操作: 1. df1与df2进行左连接操作 2. 过滤出结果为空的行数据   可以参考以下代码:
merged_df = pd.merge(df1, df2, how='left', on='col1')
diff_df = df1[merged_df['col2'].isnull()]
diff_df的结果为 col1 b    

子秦1117

赞同来自:

好的,谢谢老师。看来没有直接的方法了。

要回复问题请先登录注册