首页 > 解决方案 > 合并 2 列上的两个数据框

问题描述

在此处输入图像描述

df1 有 92851 行 × 6 列,

在此处输入图像描述

df2 有 92851 行 × 3 列。

但是当我尝试将两个数据帧合并为一个时,我得到的基数为 255089 行 × 7 列。它应该是 92851 行 x 7 列。

为什么会这样?

df=pd.merge(df1,df2,on=['source','destination'])

标签: python-3.xpandasdataframemerge

解决方案


您可以使用join而不是合并。

SCALA 代码

val newDF = df1
               .join(df2, Seq("source", "destination"), "left_outer")

蟒蛇代码

newDF = df1
           .join(df2, ['source', 'destination'], 'left_outer')

推荐阅读