我有两个数据框
DF_1:
Item number Price Location
33 $4 Boston
29 $2 NYC
DF_2:
Item number 29 33
Property 1 2.4 4.2
Property 2 5.2 1.9
Property 3 8.9 3.8
我想将DF_1中的项目编号替换为DF_2中的3个相应属性,以便新DF看起来像:
New_DF:
Property 1 Property 2 Property 3 Price Location
4.2 1.9 3.8 $4 Boston
2.4 5.2 8.9 $2 NYC
我经历了几个小时的努力,并且彻底查看了StackOverFlow但却找不到类似的东西。请帮忙。
答案 0 :(得分:1)
一种方法是转置和合并。唯一的复杂因素是您需要确保您的合并列/索引属于同一类型。在这里,我们将转置数据框的索引显式转换为int
。
df2_t = df2.set_index('Item Number').T
df2_t.index = df2_t.index.astype(int)
res = df1.merge(df2_t, left_on='Item Number', right_index=True)
print(res)
Item Number Price Location Property1 Property2 Property3
0 33 $4 Boston 4.2 1.9 3.8
1 29 $2 NYC 2.4 5.2 8.9