>我的df类似于以下内容:
value is_1 is_2 is_3
5 0 1 0
7 0 0 1
4 1 0 0
(可以保证,列中的值总和is_1...is_n等于每行计算 1(
我需要得到下一个结果:
is_1 is_2 is_3
0 5 0
0 0 7
4 0 0
(我应该找到大于 0 的列is_k,并用"值"列中的值填充它(
实现它的最佳方法是什么?
我会这样做:
In [16]: df = df.mul(df.pop('value').values, axis=0)
In [17]: df
Out[17]:
is_1 is_2 is_3
0 0 5 0
1 0 0 7
2 4 0 0