目前,我有两个数组:a1的形状为(5,4,6,3),第二个a2的形状为(5,4,6),最后我想要一个合并的数组(5,4, 6,4)
目前,我对每个(6,3)数组进行“循环”处理,然后将其与(6,1)到(6,4)对应地堆叠起来。
for i in range(a1.shape[0]):
for j in range(a1.shape[1]):
a = np.hstack((a1[i,j], a2[i,j].reshape(6,1)))
但是,如果它比5 * 4大很多,效率就不高。
您有更好的方法吗?
答案 0 :(得分:0)
这是您想要的吗?
import numpy as np
a1 = np.ones((5, 4, 6, 3))
a2 = np.ones((5, 4, 6))
result = np.concatenate((a1, a2[..., np.newaxis]), axis=-1)
print(result.shape)
(5, 4, 6, 4)