我的问题与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