Effacer les filtres
Effacer les filtres

How can I delete even rows in a matlab Matrix

37 vues (au cours des 30 derniers jours)
Mehdi Jaiem
Mehdi Jaiem le 23 Nov 2020
Commenté : Mehdi Jaiem le 23 Nov 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

Réponse acceptée

Stephan
Stephan le 23 Nov 2020
Modifié(e) : Stephan le 23 Nov 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 commentaires
Stephan
Stephan le 23 Nov 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 le 23 Nov 2020
I want to get every third column starting from from the first one (it counts). Displayed will be : first, fourth, seventh etc...

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by