How to make one matrix?
    7 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Ahmed
 am 28 Jan. 2024
  
    
    
    
    
    Kommentiert: Walter Roberson
      
      
 am 29 Jan. 2024
            Hi
I have 100 arrays i.e. each have one row and diffrent columns (say size is A = 1 * 167 and B = 1 * 189 and so on). I want to make one matrix in way that the first row is A, second row is B and so on... But the columns will remain different. How can I do it?
4 Kommentare
Akzeptierte Antwort
  Torsten
      
      
 am 28 Jan. 2024
        
      Verschoben: Torsten
      
      
 am 28 Jan. 2024
  
      Either use a cell array or dimension the matrix to have the maximum number of columns of the 100 row vectors:
A = [1 23 45];
B = [1 2];
M1 = cell(2,1);
M1{1} = A;
M1{2} = B;
M1
n = max(size(A,2),size(B,2));
M2 = zeros(2,n);
M2(1,:) = [A,zeros(1,n-size(A,2))];
M2(2,:) = [B,zeros(1,n-size(B,2))];
M2
5 Kommentare
  Stephen23
      
      
 am 29 Jan. 2024
				
      Bearbeitet: Stephen23
      
      
 am 29 Jan. 2024
  
			"How to get rid off these zeros during plotting?"
Replace ZEROS with NAN. Or use the approach I gave you here:
"actually all the variables are stored separetly."
Having lots of separate variables makes your data much harder to work with.
It is much better to use a cell array or structure array.
  Walter Roberson
      
      
 am 29 Jan. 2024
				Whatever process is loading all that data into seperate variables: it would be better if it loaded it all into a cell or a struct array to start with.
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu Creating and Concatenating Matrices 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!
