我试图用matlab格式保存一个python3d int数组,其中第三维是可变长度的。我想到的解决办法是
array = np.empty((FirstDim, SecondDim), dtype = object)
for i in range(FirstDim):
for j in range(SecondDim):
array[i][j] = ...
scipy.io.savemat('array', {'array':array})
但问题是,当我在matlab中访问数组变量时,它实际上存储为一个2D数组。你知道吗
load array.mat
array(1,1,2)
error: A(I,J,...): index to dimension 3 out of bounds; value 2 out of bound 1
有没有人能给我一些建议,让我可以像访问3D数组一样访问matlab中的数组?谢谢!你知道吗
因为将三维数组保存为对象的二维数组(每个对象都是一维数组),所以Matlab将其加载为单元数组,其中每个单元都是一维数组。可以使用以下语法访问单元格数组中的值:
相关问题 更多 >
编程相关推荐