[英]Converting Rows into Columns in a cell array in MATLAB
我有一个 99x1 单元阵列,例如,我想将其转换为 33x3 单元阵列。
我希望 99x1 单元阵列的前 3 行组成 33x3 单元阵列中的第一行,然后 99x1 单元阵列中的第 3 到第 6 行组成 33x3 单元阵列中的第二行。
在数据下降之前,我还需要逐列重塑为 go 的数据。 例如我需要:
1 2 3 4
成为
1、2; 3、4
不是
1、3; 2、4
对此的帮助将不胜感激
您可以简单地使用reshape
-function。 由于reshape(yourcell,[],3)
将首先填充第一列,然后是第二列,依此类推,而不是逐行填充,因此您需要将其与转置运算符结合使用.'
:
newcell=reshape(yourcell,3,[]).'
这样,您将首先使用reshape
创建一个3x33
单元格,然后将其转换为所需的33x3
单元格。 []
告诉 reshape 根据需要创建尽可能多的列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.