deleting rows with a criteria for repeating indices
    3 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
Hi All,
I have this matrix:
460231  1
406962  1
407721  1
407963  1
409590  1
480657  2
527635  2
525820  2
624575  2
593871  2
548098  3
542776  3
544329  3
553168  3
552825  3
473360  1
410370  1
408704  1
407852  1
409568  1
462219  2
510423  2
508923  2
508207  2
507325  2
and I want to do the following to the matrix. Can you please help me how to do it?
1- I want to remove all rows whose second column is 2.
2-For the remainder of the matrix, I want to delete the first two rows whose second column is 1 and 3
So, the output I want should look like this:
407721  1
407963  1
409590  1
544329  3
553168  3
552825  3
408704  1
407852  1
409568  1
0 commentaires
Réponse acceptée
  Stephen23
      
      
 le 29 Juin 2017
        >> B = A(A(:,2)~=2,:);
>> X = diff(B(:,2))~=0;
>> X = [true;X] | [true;true;X(1:end-1)];
>> C = B(~X,:)
C =
   407721        1
   407963        1
   409590        1
   544329        3
   553168        3
   552825        3
   408704        1
   407852        1
   409568        1
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!