gpt4 book ai didi

python - python中减去两个数组,类似于matlab中的bsxfun

转载 作者:行者123 更新时间:2023-12-01 23:27:26 25 4
gpt4 key购买 nike

我有两个 np.arrays,比如 A=np.array([1,2,3])B=np.array([1,2,3,4 ]) 例如。我想计算一个新数组 C,这样 C 的第一行是 A 的第一个元素减去 B 中的每个元素C 的第二行是 A 的第二个元素减去 B 中的每个元素和 的最后一行CA 的第三个元素减去 B 中的每个元素。是否可以在不使用任何 for 循环或 numpy 重复的情况下对其进行编码?我知道我们可以在 matlab 中使用 bsxfun。我搜索,但我没有得到满意的答案。

最佳答案

您可以使用 numpy broadcasting通过 adding a new axisA(None 或别名 np.newaxis):

C = A[:, None] - B

# array([[ 0, -1, -2, -3],
# [ 1, 0, -1, -2],
# [ 2, 1, 0, -1]])

关于python - python中减去两个数组,类似于matlab中的bsxfun,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66983377/

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