How to make one matrix?
    5 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Ahmed
 el 28 de En. de 2024
  
    
    
    
    
    Comentada: Walter Roberson
      
      
 el 29 de En. de 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 comentarios
Respuesta aceptada
  Torsten
      
      
 el 28 de En. de 2024
        
      Movida: Torsten
      
      
 el 28 de En. de 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 comentarios
  Stephen23
      
      
 el 29 de En. de 2024
				
      Editada: Stephen23
      
      
 el 29 de En. de 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
      
      
 el 29 de En. de 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.
Más respuestas (0)
Ver también
Categorías
				Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





