大熊猫离开了-为什么会有更多结果?


问题内容

大熊猫怎么可能像

df.merge(df2, left_on='first', right_on='second', how='left')

将数据帧从221309行增加到1388680行?

编辑

df 1的形状(221309,83)

df2的形状(7602,6)


问题答案:

正如@JonClements在评论中所说,这是由于用于合并/联接的列中条目重复的结果。这是一个小演示:

In [5]: df
Out[5]:
   a   b
0  1  11
1  1  12
2  2  21

In [6]: df2
Out[6]:
   a    c
0  1  111
1  1  112
2  2  221
3  2  222
4  3  311

In [7]: df.merge(df2, on='a', how='left')
Out[7]:
   a   b    c
0  1  11  111
1  1  11  112
2  1  12  111
3  1  12  112
4  2  21  221
5  2  21  222