Skip to main content
 首页 » 编程设计

python之在 Pandas 中连接两个 df

2025年05月04日10wayfarer

我想知道是否有一种方法可以验证一个 df 中与另一个 df 中的值是否存在于两个 df 或另一个 df 中,然后再将它们堆叠在一起??

我有两个dfs作为

df = pd.concat([df1, df2]) 
df = df.sort_values(by=['id', 'timestamp']).reset_index(drop=True) 
df 
 
   id  timestamp 
0   1 1959-06-01 
1   1 2019-01-01 
2   1 2019-01-02 
3   2 1989-12-01 
4   2 2019-01-15 
5   3 1999-01-25 
6   3 2019-01-17 
7   3 2019-02-01 
8   3 2019-02-03 

在连接类似于合并之前,有没有办法验证 df1 中的 ID 是否存在于 df2 中?我不需要合并,而是将 dfs 串联在一起。

一个 df 有多个 ID 和时间戳,另一个只有一个 ID,我想确保只有两个中都存在的 ID 才会出现在结果串联的 df 中

谢谢!

请您参考如下方法:

您可以在此处执行的一种解决方法是创建一个虚拟列:

df1["df"] = 1 
df2["df"] = 2 
df = pd.concat([df1, df2]) 

这样您就可以看到每一行的来源。