How to divide vector to matrix(same row and column)
    8 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
Hello.
I got some vector like (82580526 X 1)
I want to divide this vector to matrix. The matrix have same row and column. (N x N)
If it can't be divide equally, some row or column of the matrix can be splited.
Could you explain how to have same row and column?
Respuesta aceptada
  KSSV
      
      
 el 27 de Mzo. de 2020
        
      Editada: KSSV
      
      
 el 27 de Mzo. de 2020
  
      To remove extra elements and convert to square matrix 
A = rand(82580526,1) ; 
l = length(A) ; 
% GEt the nearest perfect square 
N = floor(sqrt(l)) ; 
% Reshape into required matrix 
iwant = reshape(A(1:N*N),N,N) ; 
To append zeros and convert to square matrix 
A = rand(82580526,1) ; 
l = length(A) ; 
% GEt the next perfect square 
N = ceil(sqrt(l)) ;
% Append zeros 
A = [A ; zeros(N^2-l,1)] ; 
% Reshape into required matrix 
iwant = reshape(A,N,N) ; 
0 comentarios
Más respuestas (1)
  Walter Roberson
      
      
 el 27 de Mzo. de 2020
        If you have the Communications Systems Toolbox, then
buffer(TheVector, ceil(sqrt(numel(TheVector))))
0 comentarios
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!



