How to concatenate string vectors of unequal length?
    10 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Danny
 am 20 Dez. 2014
  
    
    
    
    
    Bearbeitet: Stephen23
      
      
 am 2 Jan. 2015
            If I have thee vectors v1 = {'a' 'b' 'c'}', v2 = {'d'}' and v3 = {'e' 'f'}', how do I create a four vector v4 =
'a' 'd' 'e'
'b' '' 'f'
'c' '' ''
?
1 Kommentar
Akzeptierte Antwort
  Image Analyst
      
      
 am 20 Dez. 2014
        Try this:
% Define component cell arrays.
v1 = {'a'; 'b'; 'c'}
v2 = {'d'}
v3 = {'e'; 'f'}
% Find out how  big cell array needs to be.
lv1 = length(v1);
lv2 = length(v2);
lv3 = length(v3);
rows = max([lv1,lv2,lv3])
% Instatiate cell array of the max size.
v4 = cell(rows, 3)
% stuff each column in.
v4(1:lv1, 1) = v1;
v4(1:lv2, 2) = v2;
v4(1:lv3, 3) = v3;
% Print out results
fprintf('\n\nHere is the output cell array:\n');
v4
In the command window:
Here is the output cell array:
v4 = 
    'a'    'd'    'e'
    'b'     []    'f'
    'c'     []     []
Weitere Antworten (3)
  Azzi Abdelmalek
      
      
 am 20 Dez. 2014
        v1 = {'a' 'b' 'c'}', 
v2 = {'d'}' 
v3 = {'e' 'f'}'
v=cell(3,3)
v(:,:)={' '}
v(1:3,1)=v1
v(1,2)=v2
v(1:2,3)=v3
0 Kommentare
  Thorsten
      
      
 am 20 Dez. 2014
         v1 = {'a' 'b' 'c'}';
 v2 = {'d'}';
 v3 = {'e' 'f'}'; 
 m = max([numel(v1) numel(v2) numel(v3)]);
 if numel(v1) < m, v1{m} = []; end
 if numel(v2) < m, v2{m} = []; end
 if numel(v3) < m, v3{m} = []; end
 M = [v1 v2' v3]';
 X = M(:);
0 Kommentare
  Shoaibur Rahman
      
 am 20 Dez. 2014
        
      Bearbeitet: Shoaibur Rahman
      
 am 20 Dez. 2014
  
      v1 = {'a' 'b' 'c'}';
v2 = {'d'}';
v3 = {'e' 'f'}';
Lv1 = length(v1); Lv2 = length(v2); Lv3 = length(v3);
n = max([Lv1 Lv2 Lv3]);
v1cell = [v1; cell(n-Lv1,1)];
v2cell = [v2; cell(n-Lv2,1)];
v3cell = [v3; cell(n-Lv3,1)];
v4 = [v1cell v2cell v3cell];
0 Kommentare
Siehe auch
Kategorien
				Mehr zu Cell Arrays finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





