How to create vectors from a cell array?
20 ビュー (過去 30 日間)
古いコメントを表示
I have a cell array consisting of 3 cells (1x10, 1x15, 1x20). How can I efficiently create 3 vectors?
1 件のコメント
回答 (2 件)
Adam
2017 年 7 月 3 日
編集済み: Adam
2017 年 7 月 3 日
[a,b,c] = myCell{:};
Not advisable if the number of vectors you want to create escalates to the state that you are next going to ask how you name then a1, a2, a3, etc, but for just extracting an explicit number of outputs the above should work.
Image Analyst
2017 年 7 月 3 日
Use deal():
% Setup: Make cell array consisting of 3 cells (1x10, 1x15, 1x20).
ca = {ones(1,10), rand(1,15), randi(9, 1, 20)}
celldisp(ca); % Display it.
% Make vectors
[v1, v2, v3] = deal(ca{:})
or simply assign the 3 vectors
v1 = ca{1};
v2 = ca{2};
v3 = ca{3};
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Cell Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!