How can I delete even rows in a matlab Matrix

60 visualizaciones (últimos 30 días)
Mehdi Jaiem
Mehdi Jaiem el 23 de Nov. de 2020
Comentada: Mehdi Jaiem el 23 de Nov. de 2020
Hello
My Idea consists in deleting every row with an even index (I wanted to test something).
But this code does not seem to work.
I get the error " Matrix index is out of range for deletion. "
Thank you
Y=magic(10)
%T = Y (1:2:end , 1:3:end );
T=Y
[a,b]=size(T);
for i = 1:a
r=rem(i,2);
if (r == 0)
T(i, :)=[];
end
T
end

Respuesta aceptada

Stephan
Stephan el 23 de Nov. de 2020
Editada: Stephan el 23 de Nov. de 2020
>> A = [1 2 3; 4 5 6; 7 8 9; 0 -1 -2]
A =
1 2 3
4 5 6
7 8 9
0 -1 -2
>> A(2:2:end,:) = []
A =
1 2 3
7 8 9
  3 comentarios
Stephan
Stephan el 23 de Nov. de 2020
A(:, 1:3:end) = [];
will delete every third column without copying te wanted ones. If you dont want to use this syntax you have to use a loop - but why should you do this?
Mehdi Jaiem
Mehdi Jaiem el 23 de Nov. de 2020
I want to get every third column starting from from the first one (it counts). Displayed will be : first, fourth, seventh etc...

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by