我有一个大型数据框df1
,其中包含许多数据列,其中两个是dates
和colNum
。我建立了第二个数据框df2
,它跨越了colNum
的日期范围和df1
。我现在想用df2
的第三列(许多其他数据列中的任何一个)填充df1
,这些列满足{{1}中的dates
和colNum
的条件}与df1
的{{1}}和dateIndex
匹配。
我尝试过colNum
的各种化身,但都没有成功。
我可以遍历组合,但是df2
非常大(270k,2k),因此永远需要从MERGE
的其中一列中填充一个df1
,让独自一人。
慢循环版本
df2
答案 0 :(得分:0)
将索引转换为列
df1.reset_index() #as per your statement date seems to be in index
df2.rest_index()
df2 = pd.merge(df2, df1, on = ['dateIndex', 'colNum'], how = 'left')
#根据您的方便保持“左”或“内”
更新 相反,您可以将日期保留在索引中,而在pd.merge中,也可以选择通过索引加入