猿问

结合 numpy 数组“逐元素”

目前我有两个数组:a1 的形状是 (5,4,6,3),第二个 a2 是 (5,4,6) 最后我想得到一个合并的数组 (5,4,6,4 )


目前我“循环”每个(6,3)数组并将其与对应的(6,1)到(6,4)进行np.stack。


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 大得多,则效率不高。


你有更好的方法吗?


泛舟湖上清波郎朗
浏览 195回答 1
1回答

慕虎7371278

这是你想要的吗?import numpy as npa1 = 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)
随时随地看视频慕课网APP

相关分类

Python
我要回答