我的问题与 Multiply two pandas DataFrames based on column 非常相似和 Multiply two data frames with similar index in python pandas但有点不同。我尝试了这两个建议,但对我没有用。
我所有的输入都是从一个 csv 文件中读取的。
输入 1
Attr1 Attr2
0 10 20
1 30 40
假设输入 2 指定了 Attr1 和 Attr2 的权重
输入 2
Attr1 Attr2
0 5 6
我的输出是将输入 2 的权重乘以输入 1 中对应属性的每一行,所以我的输出需要是
Attr1 Attr2
0 50 120
1 150 240
请您参考如下方法:
您可以先选择 d2 中的第一行 - 输出为 Series 然后乘以 mul :
print (d2.iloc[0])
Attr1 5
Attr2 6
Name: 0, dtype: int64
d = d1.mul(d2.iloc[0])
print (d)
Attr1 Attr2
0 50 120
1 150 240
