2017-09-25 149 views
-1

使用NumPy的:将元素添加到numpy的阵列

X= numpy.zeros(shape=[1, 4], dtype=np.int) 

我如何添加一个列表,如[1,2,3,4]?我试过numpy.add(X,[1,2,3,4])np.hstack((1,2,3,4)),但他们都没有工作!

我知道如何在标准Python列表中使用append方法,但我想用numpy来提高性能。

+1

尝试'numpy.add.at'。 – Divakar

+0

你可以包含所需的输出吗? – MSeifert

+0

'numpy.add.at(X,[1,2,3,4])'不起作用?那是对的吗? – David

回答

1

Numpy数组在创建后不会改变形状。因此在调用方法zeros((1,4), ...)后,您已经有了一个1x4满零的矩阵。要将其元素设置为零以外的值,您需要使用赋值运算符:

X[0] = [1, 2, 3, 4] # does what you are trying to achieve in your question 
X[0, :] = [1, 2, 3, 4] # equivalent to the above 
X[:] = [1, 2, 3, 4] # same 
X[0, 1] = 2 # set the individual element at [0, 1] to 2