numpy - 是否有通过添加两个一维数组来创建二维数组的 numpy 方法?

标签 numpy

基本上,s_{i,j} = a_i + b_j

如果n=len(a)m=len(b),则s.shape(n,米)。因此,上面的加法是不可交换的。

它涉及一些花招:

s = np.tile(a.reshape(n,1),m).reshape(n,m) + np.tile(b,n).reshape(n,m)

但我想知道 numpy 中是否已经有一些方法可以做到这一点。我找不到它。

最佳答案

是的,确实有。 numpy ufuncs 有一个outer 方法:

s = np.add.outer(a, b)

关于numpy - 是否有通过添加两个一维数组来创建二维数组的 numpy 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42960545/

相关文章:

python - 均值的 Numpy 语法

python - 如何有效地将 numpy ndarray 转换为元组列表?

Python:多个 if 条件取决于参数

python - 大型 3D 数组的高效 numpy 切片

python - NumPy 的 : The truth value of an array with more than one element is ambiguous

python numpy array/dict 多重继承

python - 在 Python 中查找给定数组中最小值的索引

python - 用户函数的 numpy 广播

python - 为什么 numpy max 函数(np.max)返回错误的输出?

python - scipy.optimize.fmin_powell() 和 scipy.optimize.minimize(..., 方法 ='Powell' ) 之间的区别