Move multiple rows without swapping
    5 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Rishi Balasubramanian
 el 23 de Dic. de 2020
  
    
    
    
    
    Comentada: Rishi Balasubramanian
 el 23 de Dic. de 2020
            Hello,
I have a mxn matrix of binary data. I want to write a code where I find the rows in column n which have 1s in them and move them to bottom of the row. I want a generalised code for this as it will be in a loop where multiple iterations of this will be executed.
%For example, assume this is my matrix
%    a b c d e f g h i j k l
H = [0 0 1 1 0 1 0 1 0 1 1 0;  %1
     0 0 0 1 0 1 1 0 1 0 1 0;  %2
     0 1 1 0 0 1 1 1 0 0 0 1;  %3
     0 1 1 0 1 0 1 0 1 0 0 1;  %4
     0 0 0 1 1 0 0 1 1 0 0 0;  %5
     0 1 0 0 1 0 0 0 0 0 1 0]; %6
%In column 'l' there are 2 rows with 1s in them (row 3 and 4). 
% I want to move rows 3 and 4 to the bottom. My final matrix should look like this.
%    a b c d e f g h i j k l
H = [0 0 1 1 0 1 0 1 0 1 1 0;  %1
     0 0 0 1 0 1 1 0 1 0 1 0;  %2  
     0 0 0 1 1 0 0 1 1 0 0 0;  %5
     0 1 0 0 1 0 0 0 0 0 1 0;  %6
     0 1 1 0 0 1 1 1 0 0 0 1;  %3
     0 1 1 0 1 0 1 0 1 0 0 1]; %4
%Any help is appreciated. I thank in advance.
0 comentarios
Respuesta aceptada
  Ive J
      
 el 23 de Dic. de 2020
        H = randi([0 1], 6, 10)
H =
     0     1     0     1     1     0     0     0     1     0
     1     1     1     0     1     1     0     1     1     1
     0     0     0     0     1     0     0     1     0     1
     1     1     0     0     1     1     1     0     0     1
     1     1     0     0     1     1     1     1     0     0
     1     0     1     1     1     1     1     0     1     1
col = 9;
H = [H(H(:, col) < 1, :); H(H(:, col) > 0, :)]
     0     0     0     0     1     0     0     1     0     1
     1     1     0     0     1     1     1     0     0     1
     1     1     0     0     1     1     1     1     0     0
     0     1     0     1     1     0     0     0     1     0
     1     1     1     0     1     1     0     1     1     1
     1     0     1     1     1     1     1     0     1     1
5 comentarios
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!