【发布时间】:2017-12-20 22:15:58
【问题描述】:
我有一个行向量 R 和一个列向量 C。我想添加它们以创建一个数组 A,其高度等于 R 的大小,宽度等于 C 的大小,如下所示:A[i,j] = R [i] + C[j]
最有效的方法是什么?
【问题讨论】:
我有一个行向量 R 和一个列向量 C。我想添加它们以创建一个数组 A,其高度等于 R 的大小,宽度等于 C 的大小,如下所示:A[i,j] = R [i] + C[j]
最有效的方法是什么?
【问题讨论】:
R + C[:, numpy.newaxis]
对我有用。
例如
import numpy as np
r = np.ones(5)
c = np.ones(4) * 2
r + c[:, np.newaxis]
给了
array([[ 3., 3., 3., 3., 3.],
[ 3., 3., 3., 3., 3.],
[ 3., 3., 3., 3., 3.],
[ 3., 3., 3., 3., 3.]])
【讨论】:
r = np.arange(5) 和 c = np.arange(4) * 10 会更好地说明我们得到了所需的输出。 :)