Convert 8x3 char to string sequence (MATLAB)
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
high speed
le 1 Déc 2022
Commenté : Walter Roberson
le 1 Déc 2022
Dear,
I have this char characters on MATLAB:
val =
'011'
'010'
'001'
'000'
'000'
'001'
'010'
'011'
I want to convert them to one sequence of type string to obtain this result:
"011010001000000001010011"
0 commentaires
Réponse acceptée
Plus de réponses (2)
David Hill
le 1 Déc 2022
val=['011'
'010'
'001'
'000'
'000'
'001'
'010'
'011']
val=val'
val=val(:)'
0 commentaires
Steven Lord
le 1 Déc 2022
val = ...
['011'
'010'
'001'
'000'
'000'
'001'
'010'
'011'];
s = join(string(val), '')
2 commentaires
Walter Roberson
le 1 Déc 2022
Without using string(), such as for older MATLAB:
val = ...
['011'
'010'
'001'
'000'
'000'
'001'
'010'
'011'];
s = strjoin(cellstr(val), '')
Walter Roberson
le 1 Déc 2022
Interesting, using string() is measurably faster here.
format long g
val = char(randi(+'0', +'1'), 5000, 50);
N = 100;
t_string = zeros(N,1);
t_cell = zeros(N,1);
for K = 1 : N; start = tic; s = join(string(val), ''); stop = toc(start); t_string(K) = stop; end
for K = 1 : N; start = tic; s = strjoin(cellstr(val), ''); stop = toc(start); t_cell(K) = stop; end
[mean(t_string(2:end)), mean(t_cell(2:end))]
plot([t_string(2:end), t_cell(2:end)]);
legend({'string()', 'cellstr()'})
Voir également
Catégories
En savoir plus sur Testing Frameworks 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!