Convert 8x3 char to string sequence (MATLAB)
    4 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    high speed
 il 1 Dic 2022
  
    
    
    
    
    Commentato: Walter Roberson
      
      
 il 1 Dic 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 Commenti
Risposta accettata
Più risposte (2)
  David Hill
      
      
 il 1 Dic 2022
        val=['011'
    '010'
    '001'
    '000'
    '000'
    '001'
    '010'
    '011']
val=val'
val=val(:)'
0 Commenti
  Steven Lord
    
      
 il 1 Dic 2022
        val = ...
    ['011'
    '010'
    '001'
    '000'
    '000'
    '001'
    '010'
    '011'];
s = join(string(val), '')
2 Commenti
  Walter Roberson
      
      
 il 1 Dic 2022
				Without using string(), such as for older MATLAB:
val = ...
    ['011'
    '010'
    '001'
    '000'
    '000'
    '001'
    '010'
    '011'];
s = strjoin(cellstr(val), '')
  Walter Roberson
      
      
 il 1 Dic 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()'})
Vedere anche
Categorie
				Scopri di più su Loops and Conditional Statements 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!




