我在 for 循环中的每次迭代中创建一个大小为 numpy 的数组20x30x30x3。我想将所有这些 numpy 数组连接成一个更大的数组。如果迭代步骤是 100,那么我想要的 numpy 数组应该是2000x30x30x3. 我尝试使用列表:
new_one_arr1_list = []
new_one_arr2_list = []
all_arr1 = np.array([])
for item in one_arr1: # 100 iterations
item = np.reshape(item, (1, 30, 30, 3))
new_one_arr1 = np.repeat(item, 20, axis=0)
all_arr1 = np.concatenate(([all_arr1 , new_one_arr1 ]))
ind = np.random.randint(one_arr2.shape[0], size=(20,))
new_one_arr2= one_arr1[ind]
new_one_arr1_list.append(new_one_arr1)
new_one_arr2_list.append(new_one_arr2)
在每个迭代步骤中new_one_arr1,new_one_arr2它们都有 size 20x30x30x3。最后,当我转换时new_one_arr1_list,new_one_arr2_list它的大小是100x20x30x30x3. 我怎么能在一个 numpy 数组中最后有 2000x30x30x3?
编辑:我尝试使用 concatenate 在一个 numpy 数组中添加数组all_arr1:all_arr1= np.concatenate(([all_arr1, new_one_arr1]))但是,我收到了消息:
ValueError:所有输入数组必须具有相同的维数
相关分类