簡體   English   中英

在 MATLAB 中將單元格數組中的行轉換為列

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM