MATLAB cell进行合并,Cell转换为3D矩阵

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如下:
cell-AAA
AAA{1}如下:(142 cell)
AAA{1,1}
AAA{2}如下:(1
42 cell)
在这里插入图片描述

对AAA cell进行合并有:
catAAA
对AAA{1,1} cell进行合并有:

catAAA
将Cell合并为了3D矩阵。


版权声明:本文为qq_38330266原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。