【发布时间】:2019-11-21 20:37:48
【问题描述】:
我有两个如下所示的数据框;我想将 df1 的每一列与 df2 中相应行中的每个值相乘。每次都应该产生一个新列。 (最好用一个例子来解释)。
Df1(在我的实际问题中有 +1000 行)
'Fert 1' 'Fert 2' 'Fert 3'
A 1000 900 800
B 100 90 80
C 10 9 8
D 0.1 0.9 0.8
Df2(较小的 df,其中行名与 df1 列名相同)
'L1' 'L2'
'Fert 1' 1 0.5
'Fert 2' 2 0
'Fert 3' 1 0.5
期望的结果:基本上我想要 df1 乘以 df2 并展开(我希望列名是多索引)。我可以使用嵌套循环来做到这一点,尽管我无法以这种方式获得正确的列标题。并且循环似乎是一种低效的方式,因为它在我更大的数据集下变得很慢。我希望可以使用合并或连接来完成,但我无法解决。
'Fert 1' 'Fert 2' 'Fert 3'
'L1' 'L2' 'L1' 'L2' 'L1' 'L2'
A 1000 500 1800 0 800 400
B 100 50 180 0 80 40
C 10 5 18 0 8 4
D 0.1 0.05 1.8 0 0.8 0.4
感谢您的帮助!
【问题讨论】: