Python Pandas:仅当列值唯一时才将数据帧附加到另一个数据帧

Pin*_*ts0 5 python append conditional-statements pandas

我有两个数据框想要附加在一起。以下是示例。

df_1:

Code    Title
103     general checks 
107     limits
421     horseshoe
319     scheduled 
501     zonal 
Run Code Online (Sandbox Code Playgroud)

df_2

Code    Title
103     hello 
108     lucky eight 
421     little toe 
319     scheduled cat
503     new item 
Run Code Online (Sandbox Code Playgroud)

仅当 df_2 中的代码号在 df_1 中不存在时,我才想将 df_2 附加到 df_1。

下面是我想要的数据框:

Code    Title
103     general checks 
107     limits
421     horseshoe
319     scheduled 
501     zonal 
108     lucky eight 
503     new item
Run Code Online (Sandbox Code Playgroud)

我已经通过 Google 和 Stackoverflow 进行了搜索,但找不到有关此特定案例的任何内容。

raf*_*elc 6

只是append过滤后的数据框

df3 = df2.loc[~df2.Code.isin(df.Code)]
df.append(df3)

    Code    Title
0   103 general checks
1   107 limits
2   421 horseshoe
3   319 scheduled
4   501 zonal
1   108 lucky eight
4   503 new item
Run Code Online (Sandbox Code Playgroud)

请注意,您最终可能会得到重复的索引,这可能会导致问题。为了避免这种情况,您可以.reset_index(drop=True)获取一个没有重复索引的新 df。

df.append(df3).reset_index(drop=True)

    Code    Title
0   103 general checks
1   107 limits
2   421 horseshoe
3   319 scheduled
4   501 zonal
5   108 lucky eight
6   503 new item
Run Code Online (Sandbox Code Playgroud)