gpt4 book ai didi

python - 如何使用 numpy 进行按列减法?

转载 作者:行者123 更新时间:2023-12-01 01:13:20 61 4
gpt4 key购买 nike

假设我有:

array([[ 5,  4,  3,  3],
[ 5, 4, 3, 3],
[ 5, 4, 3, 3],
[ 5, 4, 3, 3],
[ 5, 4, 3, 3]])

然后我就有了

数组([1,2,3,4])

我想用一维数组中相应的列值减去原始矩阵中的每一列。

所以,我希望它成为

array([[ 4,  2,  0,  -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1]])

如何在 numpy 中实现这一点?

最佳答案

这比您想象的要容易得多:

In [1]: import numpy as np

In [2]: arr = np.array([[ 5, 4, 3, 3],
...: [ 5, 4, 3, 3],
...: [ 5, 4, 3, 3],
...: [ 5, 4, 3, 3],
...: [ 5, 4, 3, 3]])

In [3]: sub = np.array([1, 2, 3, 4])

In [4]: arr - sub
Out[4]:
array([[ 4, 2, 0, -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1],
[ 4, 2, 0, -1]])

NumPy 会自动广播,因此只需使用 - 运算符即可!

关于python - 如何使用 numpy 进行按列减法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54613990/

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