replicating the elements of a cell matrix
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear all,
here is a cell matrix
k={
12 'kol'
23 'Sew'
45 'awe'
44 'wow'
}
I would like to replicate each element twice so as to have
k={
12 'kol'
12 'kol'
23 'Sew'
23 'Sew'
45 'awe'
45 'awe'
44 'wow'
44 'wow'
}
I was thinking something like
cr=cellfun(@(x) repmat(x,2,1),k,'uni',false);
but I do not know if I am correct. Is there any better code?
Would there any difference if I had
k={
'12' 'kol'
'23' 'Sew'
'45' 'awe'
'44' 'wow'
}
thanks
0 commentaires
Réponse acceptée
the cyclist
le 26 Juil 2012
Here's one way:
nk = size(k,1);
idx = [1:nk;1:nk];
k(idx(:),:)
2 commentaires
the cyclist
le 26 Juil 2012
Use
idx = repmat(1:nk,[1000 1]);
in place of the second line.
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!