我试图用不同的值乘以熊猫数据框的每一行,并想知道这样做的最佳方法是什么。
例如,如果我有以下数据框:
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randn(2, 3))
df
0 1 2
0 -1.283316 0.849488 1.936060
1 -2.078575 -0.871570 -0.970261
我想将每行的每个元素乘以列表或数组中的不同元素
vals = [1, 100]
在此示例中,我希望将第一行中的每个项目乘以1,并将第二行中的每个项目乘以100
因此,结果应为:
0 1 2
0 -1.283316 0.849488 1.936060
1 -207.8575 -87.1570 -97.0261
我试过了:
df * vals
df.multiply(vals)
df.multiply(vals, axis=1)
根据我对该代码应做的理解,尽管我也没期望它们,但这些都不起作用。我想不出一个简单的方法来做熊猫,感谢任何帮助,谢谢。
方法是mul
:
df.mul([1, 100], axis=0)
Out[17]:
0 1 2
0 -1.198766 -1.340028 1.990843
1 113.890468 -68.177755 -9.060228
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句