Filter löschen
Filter löschen

How can I delete even rows in a matlab Matrix

37 Ansichten (letzte 30 Tage)
Mehdi Jaiem
Mehdi Jaiem am 23 Nov. 2020
Kommentiert: Mehdi Jaiem am 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

Akzeptierte Antwort

Stephan
Stephan am 23 Nov. 2020
Bearbeitet: Stephan am 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 Kommentare
Stephan
Stephan am 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 am 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...

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by