How to iteratively delete rows of a matrix?

10 views (last 30 days)
suppose I have a matrix P and v, both have the same number of rows.and v has only one column.
I need to write a loop which excutes the following:
if the 1st element in v < tol then remove the 1st row from P.
L=size(v,1);
%id is a vector where each element contains the position of the rows that must be deleted in P
for i=1:L
z=v(i);
if z<tol
id=[id;i];
else
1;
end
end
so for example if id= [1 ;50; 100]; this mean I need to remove from P the 1st, the 50th and the 100th row from P
How shall I proceed ?
Thanks

Accepted Answer

David Hill
David Hill on 29 Feb 2020
P(v<tol,:)=[];

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!