python - 通过使用 NumPy 对 2 个数组元素数组进行求和来形成矩阵

标签 python arrays numpy sum

假设我有以下 NumPy 数组:

i = array([2, 4, 5])
j = array([0, 1, 2])

我想要一个非常有效的方法(如果可能的话是内置的)来对这些向量求和并得到如下所示的输出:

[[2 4 5]
 [3 5 6]
 [4 6 7]]

所以基本上每一列都是数组 j 添加了 i 的第 k 个元素(在这种情况下 k = 0, 1, 2)

最佳答案

使用numpy.add.outer .

>>> import numpy as np                                                                                                 
>>> i = np.array([2, 4, 5])                                                                                            
>>> j = np.array([0, 1, 2])                                                                                            
>>>                                                                                                                    
>>> np.add.outer(j, i)                                                                                                 
array([[2, 4, 5],
       [3, 5, 6],
       [4, 6, 7]])

关于python - 通过使用 NumPy 对 2 个数组元素数组进行求和来形成矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53785845/

相关文章:

java - Java 和 Python 之间不可变字符串连接的性能比较

c# - 从字符串 [,] 中删除空值

python - 矢量化批量图像像素查找 numpy 数组

python - Pandas Python 中的数据框读取和日期格式化

Java:数组中交替 boolean 值

64 位 Windows 上的 Python 32 位内存限制

python 3无法识别竖线字符

python - 如何检查 selenium (python 2) 中是否存在某个元素,如果不存在则不抛出 NoSuchElement 异常?

python - 缺少 virtualenv 激活脚本

javascript - 根据两个属性的值对数组中的对象进行排序