我想将1D numpy数组添加到2D numpy数组吗?
例如:
Array1: 0 0
0 0
0 0
Array2: 1,2,3
Result: 1 0
2, 0
3, 0
如何在python中做到这一点?
答案 0 :(得分:1)
import numpy as np
x = np.zeros((3,2))
y = np.array([1,2,3])
x[:, 0] += y
答案 1 :(得分:0)
我们可以将其作为矢量操作,而不是循环进行:
import numpy as np
array1 = np.array([[0, 0], [0,0],[0,0]])
array2 = np.array([1,2,3])
请注意,array1的转置的第一个元素是您要向其添加array2的列向量:
array1.T[0]
Out[10]: array([0, 0, 0])
所以我们可以:
array1.T[0] = array1.T[0] + array2
array1
Out[12]:
array([[1, 0],
[2, 0],
[3, 0]])