Keeping the rows in an array with specified numbers
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I want to keep the part of the array with specified numbers in column 2. This deletes the rows in the array with the specified numbers in column 2, but how do I do the opposite (keep all rows where the numbers 5 or 6 are in column 2)?
numbersTokeep = [5,6];
A = magic(5);
for n = numbersToKeep
A((A(:,2) == n),:) = [];
end
0 comentarios
Respuesta aceptada
Voss
el 2 de Abr. de 2022
numbersTokeep = [5,6];
A = magic(5);
disp(A);
% keep rows where column 2 is 5 or 6:
A = A(ismember(A(:,2),numbersTokeep),:);
disp(A);
A = magic(5);
% or, delete rows where column 2 is not 5 or 6:
A(~ismember(A(:,2),numbersTokeep),:) = [];
disp(A);
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Entering Commands 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!