Move multiple rows without swapping
    5 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Rishi Balasubramanian
 am 23 Dez. 2020
  
    
    
    
    
    Kommentiert: Rishi Balasubramanian
 am 23 Dez. 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 Kommentare
Akzeptierte Antwort
  Ive J
      
 am 23 Dez. 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 Kommentare
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!

