Python 具有两个以上数组的numpy append

Python 具有两个以上数组的numpy append,python,arrays,numpy,append,concatenation,Python,Arrays,Numpy,Append,Concatenation,我知道也有类似的问题,但我找不到我想要的信息。 我有一个numpy数组的列表,我想将它们相互附加以形成一个特征矩阵 我能够得到预期的结果,如下所示: a = [1,2,3] b = [4,5,6] c = [7,8,9] d = [10,11,12] new_array = numpy.append(a, b, 1) new_array = numpy.append(new_array, c, 1) new_array = numpy.append(new_array, d, 1) 但这显然不

我知道也有类似的问题,但我找不到我想要的信息。 我有一个numpy数组的列表,我想将它们相互附加以形成一个特征矩阵

我能够得到预期的结果,如下所示:

a = [1,2,3]
b = [4,5,6]
c = [7,8,9]
d = [10,11,12]
new_array = numpy.append(a, b, 1)
new_array = numpy.append(new_array, c, 1)
new_array = numpy.append(new_array, d, 1)
但这显然不是正确的方法,因为这是非常不公平的解决方法,如果我不指定要附加我的名字的数组,它就不起作用。 我想这样做:

value = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
for subval, index in enumerate(value):
 new_array = numpy.append(subval[index], subval[index+1], 1)
我不能只做像
new\u array=numpy.append(值[0],值[1],1)
这样的事情,因为
value
的长度可能会变化。 现在的问题是,如何正确地做到这一点

我还发现了类似于
concat
的方法,但我的数学知识不足以理解它是否与第一个代码示例相同


如果你有
value=[[1,2,3],[4,5,6],[7,8,9],[10,11,12],
只要调用
np.数组(value)
就可以了。

np.连接([a,b,c,d])
会像追加一样吗?
连接更好,因为它只分配一次所需的内存。迭代的
append
将多次复制数组,例如,您的第一个数组被复制
n-1次。
append
是一种调用
concatenate
的方法,它只使用两个数组,而不是一整列数组。阅读它的源代码。这是一个命名(使用)不好的函数。值列表中的项是数组already@dumbchild不管怎样,它都会起作用的。