将DataFrame的所有列与另一个DataFrame的行相乘

时间:2019-01-19 23:01:31

标签: python pandas

我有两个DataFrame:

df1

DT   D1   D2
0   1.0  0.50

df2

DT             D1        D2
C_Step                     
UNKNOWN  0.202899  0.325581
fair     0.253623  0.244186
good     0.289855  0.186047
poor     0.253623  0.244186

如何将df1的第一行与df2的所有行相乘。

所需的DataFrame是:

DT             D1        D2
C_Step                     
UNKNOWN  0.202899  0.162790
fair     0.253623  0.122092
good     0.289855  0.093023
poor     0.253623  0.122093

1 个答案:

答案 0 :(得分:0)

您可以使用mul进行检查,然后再将df1转换为Series

df2.mul(df1.loc[0],axis=1)
               D1        D2
DT                         
UNKNOWN  0.202899  0.162791
fair     0.253623  0.122093
good     0.289855  0.093023
poor     0.253623  0.122093