1

我正在做一个项目,有一次我需要加入两个数据框:df 和 temp。df 有大约 20 列和 47576 行,而 temp 有 4 列和 446829 行;这两个数据框必须连接在三列上(由他们俩共享)。为了避免创建额外的行,我首先运行以下命令:

    temp = temp.drop_duplicates(subset=['A','B','C'])

然后我加入运行该函数的两个数据框:

    df_1 = pd.merge(df, temp, how='left', left_on=['A','B','C']; right_on=['A','B','C'])

然后我会假设 df_1 数据帧的行数与 df 完全相同(因为它不能有更多行,因为我已经在 temp 中删除了重复项;它不应该少,因为它是左连接)。

但我看到实际上 df_1 数据帧有 30259 行,远少于 df 数据帧的 47576 行。

这怎么可能?

(另外,认为它可以以某种方式帮助我填写 df 数据框中的 'A'、'B'、'C' 列的 Nan 值,但它似乎没有帮助)

4

0 回答 0