我有两个数据框
df = pd.DataFrame({'Location': [ 'Hawai', 'Torino', 'Paris'],
'Time': [2000, 2001,2002],
'Value': [1.2, 2.2,3.4]
})
df.set_index(['Location','Time'],inplace=True)
df2 = pd.DataFrame({'Country': [ 'US', 'IT', 'FR'],
'Unit': [ 'USD', 'EUR', 'EUR'],
'Location': [ 'Hawai', 'Torino', 'Paris'],
'2000': [666, 888,777],
'2002': [44,55,66]
})
df2.set_index(['Country','Unit','Location'],inplace=True)
它会生成这个:
Value
Location Time
Hawai 2000 1.2
Torino 2001 2.2
Paris 2002 3.4
2000 2002
Country Unit Location
US USD Hawai 666 44
IT EUR Torino 888 55
FR EUR Paris 777 66
我需要将它们合并,例如针对每个国家/单位/位置,将每个列与第一个数据框中相应的值相乘(给定位置和时间)
因此,结果应该如下所示:
2000 2002
Country Unit Location
US USD Hawai 799.2 149.6
IT EUR Torino 1065.6 187
FR EUR Paris 932.4 224.4
我卡在这里了,谢谢您的帮助