remove the rows of matrix?

2 visualizzazioni (ultimi 30 giorni)
jack nn
jack nn il 1 Apr 2015
Commentato: jack nn il 1 Apr 2015
I want to remove the rows of matrix that the value of them in first column is zero...I use this code:
if true
for i=1:7
if m(i)==0
m(i,:)=[];
i=i-1;
end
end
end
I run this code for this matrix but the answer is not true,it could not remove all rows that the first column of them is zero..
if true
>> m=[1 2;3 4;0 5;3 0;0 4;0 54;3 22]
m =
1 2
3 4
0 5
3 0
0 4
0 54
3 22
if true
>> for i=1:7
if m(i)==0
m(i,:)=[];
i=i-1;
end
end
end
but when we saw the result,the result is: >> m
m =
1 2
3 4
3 0
0 54
3 22
end
is my cod wrong?

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 1 Apr 2015
Modificato: Azzi Abdelmalek il 1 Apr 2015
m=[1 2;3 4;0 5;3 0;0 4;0 54;3 22]
m(~m(:,1),:)=[]

Più risposte (0)

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by