我在numpy中使用4D阵列。我想在第四维中附加数据如下:
1) 输入:
data_1_1=dim(2,4,130,10)
data_1_2=dim(2,4,130,10)
预期产出:
data_1=dim(2,4,130,20)
2)将4D阵列缩小为3D阵列 输入:
data_2_1=dim(3,5,130,20)
预期产出:
data_2_1=dim(15,130,20)
抱歉我的新手问题。
感谢您的帮助
我尝试了什么? 1)
data_1= np.concatenate((data_1_1[...,np.newaxis],data_1_2[...,np.newaxis]),axis=2)
我想知道这个解决方案是否做得对。因为我想在最后一个维度上连接。它以什么顺序完成? 是对的吗?
2)对于这种情况,我不知道
答案 0 :(得分:2)
对于第一部分,您需要说明您希望使用特定的轴:
>>>x=np.arange(2*4*130*10).reshape(2,4,130,10)
>>>np.concatenate((x,x),axis=3).shape
(2, 4, 130, 20)
对于第二部分,听起来像是你想要一个reshape
>>>y=np.arange(3*5*130*20).reshape(3,5,130,20)
>>> y.reshape(15,130,20).shape
(15, 130, 20)
您需要熟悉的numpy
术语是轴和形状 - 对这些术语的良好阅读将对您有所帮助。