0
我有一個數字向量,我想將每四個元素存儲到一個單元格中。所以前4個元素將進入第一個單元格,接下來的四個元素將進入第二個單元格中,以此類推。將元素存儲到單元格中
有沒有辦法做到這一點,而不使用循環?謝謝!
我有一個數字向量,我想將每四個元素存儲到一個單元格中。所以前4個元素將進入第一個單元格,接下來的四個元素將進入第二個單元格中,以此類推。將元素存儲到單元格中
有沒有辦法做到這一點,而不使用循環?謝謝!
你可以使用mat2cell
做到這一點
data = 1:16;
output = mat2cell(data, 1, (numel(data)/4) * ones(1,4))
% output{1} =
%
% 1 2 3 4
%
% output{2} =
%
% 5 6 7 8
%
% output{3} =
%
% 9 10 11 12
%
% output{4} =
%
% 13 14 15 16
我個人認爲輸入格式有點混亂。另一種方法是將矩陣重塑爲4行,然後使用num2cell
將每列分解成它自己的單元格。
data = 1:16;
output = num2cell(reshape(data, 4, []), 1)
感謝您的幫助!我個人更喜歡第二種方法,因爲它更容易理解! – TYL