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

44 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

James Tursa
James Tursa il 1 Mag 2013
Modificato: James Tursa il 1 Mag 2013
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 Commenti
James Tursa
James Tursa il 3 Nov 2017
The 2 forces the any( ) function to work on the rows instead of the columns (which is the default).

Accedi per commentare.

Più risposte (3)

Youssef  Khmou
Youssef Khmou il 1 Mag 2013
Modificato: Youssef Khmou il 1 Mag 2013
hi try :
[x,y]=find(data18(:,1)>1500);

N/A
N/A il 14 Mag 2016
How would you implement this in a loop for a variety of values?

partha sarkar
partha sarkar il 11 Dic 2019
how to check whether aparticular value in a array is euqal to a given value

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by