Find entire rows in a matrix where a column value meets a certain condition

I have a matrix (4columns, ~50000 rows) and I want a new matrix that will only return the (entire) rows (values, not row number) where column 4 = 101300 (to 4s.f).
Any help appreciated.
VLE1(ii,:)=[x1 x2 T P]

 Accepted Answer

filteredmatrix = originalmatrix(round(originalmatrix(:, 4), 4, 'significant') == 101300, :);
is all that is needed.

More Answers (1)

Assume your 50000x4 matrix is A, this will remove all the rows such having 4th element = 101300:
A(A(:,4)~=101300,:)=[];

Tags

Community Treasure Hunt

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

Start Hunting!