Python 如何在循环中连接np.ndarray?
我有一些数据,这些值是在循环中构造的。我想将这些ndarray连接到轴为0的单个数组。我如何用python实现它?这是我的例子Python 如何在循环中连接np.ndarray?,python,python-3.x,Python,Python 3.x,我有一些数据,这些值是在循环中构造的。我想将这些ndarray连接到轴为0的单个数组。我如何用python实现它?这是我的例子 input: 1x2x32x32x64,1x2x32x32x64,1x2x32x32x64,1x2x32x32x64 output 4x2x32x32x64 我所做的: import numpy as np A_concate=np.array([]) for i in range (4): a_i = np.random.rand(1,2,32,32,64)
input: 1x2x32x32x64,1x2x32x32x64,1x2x32x32x64,1x2x32x32x64
output 4x2x32x32x64
我所做的:
import numpy as np
A_concate=np.array([])
for i in range (4):
a_i = np.random.rand(1,2,32,32,64)
print (a_i.shape)
A_concate= np.concatenate(A_concate,a_i, axis=0)
print (A_concate.shape)
错误
这里有一个解决方案
你不是只想在这里使用
hstack
或vstack
吗?你不能建立一个列表并在最后连接一个数组列表吗?欢迎使用任何方法。我只关心输出A_concate
必须是np.ndarraynp.vstack((A,b,c,d))
@user3483203:它在lopp中,所以我们不知道A,b,c,d在哪里。我们只有a_i
Traceback (most recent call last):
File "python", line 6, in <module>
TypeError: Argument given by name ('axis') and position (2)
import numpy as np
A_concate=[]
for i in range (4):
a_i = np.random.rand(1,2,32,32,64)
print (a_i.shape)
A_concate.append(a_i)
A_concate=np.vstack((A_concate))
print (A_concate.shape)
import numpy as np
A_stack = np.random.rand(1,2,32,32,64)
for i in range (3):
a_i = np.random.rand(1,2,32,32,64)
A_stack= np.vstack([A_stack,a_i])
print (A_stack.shape) # Outputs (4, 2, 32, 32, 64)