我有不同形状的3D矩阵。如:
依旧......
我想将它们放入大矩阵中,但是当我尝试使用numpy.asarray(list_of_matrix)函数时,我通常会遇到形状错误(因为它们有不同的形状)。
您对处理此类案件的建议是什么?
我的实施如下:
matrices = []
matrices.append(mat1)
matrices.append(mat2)
matrices.append(mat3)
result_matrix = numpy.asarray(matrices)
并且有形状错误!!
更新
我愿意有一个4D的结果矩阵。
谢谢。
答案 0 :(得分:0)
我不完全确定这是否适合你,但看起来你的矩阵只是在第一轴上不一致,所以为什么不连接它们呢?
e.g。
>>> import numpy as np
>>> c=np.zeros((5,10,2048))
>>> d=np.zeros((5,6,2048))
>>> e=np.zeros((5,1,2048))
>>> f=np.concatenate((c,d,e),axis=1)
>>> f.shape
(5, 17, 2048)
现在,您必须跟踪第一轴的哪些索引对应哪个矩阵,但这可能对您有用吗?