我正在尝试合并两个数据帧。每个都有10万行。
df1 => Columns = ID1, ID2, Value1
df2 => Columns = ID1, ID2, Value2
我可以通过做
来做到这一点pd.merge(df1, df2, on=['ID1','ID2'])
这非常有效。
但是,我认为如果我首先设置索引会更快 - 特别是MultiIndex。所以我做了:
df1 = df1.set_index(['ID1', 'ID2'])
df2 = df2.set_index(['ID1', 'ID2'])
然后我做了我的合并:
pd.merge(df1, df2, left_index=True, right_index=True)
令我惊讶的是,这比第一种方法要慢得多。我希望它至少是相同的,或希望更快。
我误解了什么?