Creating a cell array of size n
古いコメントを表示
I need a cell array of size n, like if n is 3, I need
C = {'red','red','red'}
If n is 100,
C = {'red','red',.......'red'}(100 cells)
I tried this,
C = cell(1,n);
for i = 1:n
C(i) = 'red';
end
This gives known error of conversion to cell from char is not possible.
採用された回答
その他の回答 (3 件)
Jan
2012 年 7 月 5 日
C = cell(1, n);
C(:) = {'red'};
F.
2012 年 7 月 5 日
Your error :
C(i) = 'red';
C is a cell array, with C(i) you reach the place in the cell array and not the element which is in this place. So try :
C{i} = 'red';
2 件のコメント
F.
2012 年 7 月 5 日
I'm not sure but try also this :
n = 100
repmat( {'red'}, 1, n )
Giuseppe Degan Di Dieco
2021 年 5 月 19 日
Dear F,
thanks for your explanation of the cell array object.
Actually, it was quite tricky to understand.
Best.
grapevine
2012 年 7 月 5 日
You have to modify your code in this way :
C = cell(1,n);
for i = 1:n
C(i) = java.lang.String('red');
end
Another solution could pass by using the function: char2cell, which is available on Matlab Central Exchange
good luck
2 件のコメント
カテゴリ
ヘルプ センター および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!