gpt4 book ai didi

python - 如何将 Pandas 数据框中的每一行乘以不同的值

转载 作者:太空狗 更新时间:2023-10-29 17:06:13 24 4
gpt4 key购买 nike

我正在尝试将 pandas 数据框的每一行乘以不同的值,并想知道执行此操作的最佳方法是什么。

例如,如果我有以下数据框:

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)

尽管根据我对该代码应该做什么的理解,我并不期望它们也起作用,但它们都不起作用。我想不出用 Pandas 做这件事的简洁方法,感谢任何帮助,谢谢。

最佳答案

方法是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

关于python - 如何将 Pandas 数据框中的每一行乘以不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38105864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com