我有两个数据帧和一些重复索引
df1 = pd.DataFrame(np.random.randn(5, 3), columns=['A', 'B', 'C'], index=['I1', 'I1' ,'I1', 'I2', 'I2'])
df2 = pd.DataFrame(np.random.randn(4, 3), columns=['D', 'E', 'F'], index=['I1', 'I1', 'I1', 'I2'])
pd.merge(df1, df2, how='left', left_index=True, right_index=True)
似乎熊猫没有意识到两个指数有相同的值
. 我希望数据帧必须是5
行和A B C D E F
列。最后一行是nans
的D E F
像这样:
A B C D E F
I1 0.121993 0.208368 -0.056375 0.492218 -0.915034 1.667015
I1 0.121993 0.208368 -0.056375 -0.055575 -0.207215 -0.351027
I1 0.121993 0.208368 -0.056375 1.128143 1.371022 0.810542
I2 -0.817558 1.599293 -0.342841 -0.831796 -0.118316 -0.138027
I2 -0.817558 1.599293 -0.342841 NaN NaN NaN
相反,我得到的是:
A B C D E F
I1 0.121993 0.208368 -0.056375 0.492218 -0.915034 1.667015
I1 0.121993 0.208368 -0.056375 -0.055575 -0.207215 -0.351027
I1 0.121993 0.208368 -0.056375 1.128143 1.371022 0.810542
I1 0.403085 0.532958 0.856544 0.492218 -0.915034 1.667015
I1 0.403085 0.532958 0.856544 -0.055575 -0.207215 -0.351027
I1 0.403085 0.532958 0.856544 1.128143 1.371022 0.810542
I1 0.094214 -0.527932 -1.368606 0.492218 -0.915034 1.667015
I1 0.094214 -0.527932 -1.368606 -0.055575 -0.207215 -0.351027
I1 0.094214 -0.527932 -1.368606 1.128143 1.371022 0.810542
I2 0.378565 0.331995 0.167682 -0.831796 -0.118316 -0.138027
I2 0.378565 0.331995 0.167682 -0.561473 -0.898151 -0.217683
I2 -0.817558 1.599293 -0.342841 -0.831796 -0.118316 -0.138027
I2 -0.817558 1.599293 -0.342841 -0.561473 -0.898151 -0.217683
编辑:我无法对结果进行重复数据消除,因为我不想丢失原始数据帧中的重复行
使用^{} 在同一索引上联接:
编辑:
相关问题 更多 >
编程相关推荐