find out in which row an element is equal to a specific number

hi,
I have the following problem:
I have a matrix with 20 columns and over 200'000 rows. somewhere in this matrix there seems to be some strange datas which I would like to delete. If I am looking for the rownumbers where the value is higher than a specific value, lets say I am looking for all the values in the first row that are larger than 1500
If I do this:
data18(:,1)>1500
I get a logical array, but what I am looking for is the exact row number, what do I need to do?

 Accepted Answer

If you are looking for rows where any value is > 1500, then
find(any(data18>1500,2))
Or if you are only interested in rows where the 1st column is > 1500, then
find(data18(:,1)>1500)

4 Comments

why do you put number 2 in the code? find(any(data18>1500,2))
The 2 forces the any( ) function to work on the rows instead of the columns (which is the default).
Thank you from 2020. +1

Sign in to comment.

More Answers (3)

How would you implement this in a loop for a variety of values?
how to check whether aparticular value in a array is euqal to a given value

Categories

Asked:

on 1 May 2013

Commented:

BN
on 31 Mar 2020

Community Treasure Hunt

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

Start Hunting!