Creating a cell array of size n
Mostra commenti meno recenti
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.
Risposta accettata
Più risposte (3)
Jan
il 5 Lug 2012
C = cell(1, n);
C(:) = {'red'};
F.
il 5 Lug 2012
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 Commenti
F.
il 5 Lug 2012
I'm not sure but try also this :
n = 100
repmat( {'red'}, 1, n )
Giuseppe Degan Di Dieco
il 19 Mag 2021
Dear F,
thanks for your explanation of the cell array object.
Actually, it was quite tricky to understand.
Best.
grapevine
il 5 Lug 2012
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 Commenti
Categorie
Scopri di più su Matrix Indexing in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!