modify shape of char array

5 visualizzazioni (ultimi 30 giorni)
Matteo Niccoli
Matteo Niccoli il 6 Gen 2015
Modificato: Matteo Niccoli il 6 Gen 2015
I have this 10x6 character array:
250F20
271022
291124
2B1326
2E1429
2E1532
2D153C
2D1743
2D184D
2D1954
I would like to convert it to a 10x1 array where each element is a 6-character string. I got what I wanted with a cell array of strings:
cc=cellstr(array);
But I wonder why something like this would not work:
[a,b] = size(array);
for i=1:a
s(i)= strcat(array(i,1),array(i,2),array(i,2),array(i,3),array(i,4),array(i,5),array(i,6));
end
clear i

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 6 Gen 2015
Use s{} instaed of s()
[a,b] = size(array);
for i=1:a
s{i,1}= strcat(array(i,1),array(i,2),array(i,2),array(i,3),array(i,4),array(i,5),array(i,6))
end
  1 Commento
Matteo Niccoli
Matteo Niccoli il 6 Gen 2015
Modificato: Matteo Niccoli il 6 Gen 2015
Hi Azzi, thank you - of course! - it worked. Further question: assuming I vectorized your recommended solution, which one would be preferable, the latter, or
cc=cellstr(array);

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by