MATLAB 将Cell转换为3D矩阵,进行cell合并
Converting cell to 3 dimensional matrix
转载原问题
我有一个大小为[1,50]的单元格,每个单元格都是11 × 2矩阵。(这非常重要,每个cell内的矩阵size大小必须保证维度一致,才能变成3位矩阵)
我想把它转换成一个大小为11 X 2 X 50的三维矩阵。
怎样才能做到呢?
I have a cell of size [1, 50] each of it is 11 x 2 matrix.
I would like it to convert it to a 3-d matrix of size 11 X 2 X 50.
How it can be done? Cane it be done using reshape?
如果C是你的cell阵列,使用:
cell2mat(permute(C,[1,3,2]))
或者
cell2mat(reshape(C,1,1,[]))
或者 【推荐】
cat(3,C{:})
转自:https://www.mathworks.com/matlabcentral/answers/326843-converting-cell-to-3-dimensional-matrix
使用示例:
我有cell array:AAA如下:
AAA{1}如下:(142 cell)
AAA{2}如下:(142 cell)
对AAA cell进行合并有:
对AAA{1,1} cell进行合并有:
将Cell合并为了3D矩阵。