Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

How to filter out values which are greater than a defined threshold?

Asked by Hamza on 6 Jan 2013

Dear all

I would like to ask how I can filter out the values in a given dataset. For eg: I have the following data:

max= 0.0390719994902611
0.0769229978322983
0.0561660006642342
0.0695969983935356
0.0720390006899834
0.0463979989290237
0.0317460000514984
0.0293039996176958
0.0317460000514984
0.0280830003321171
0.0378509983420372

I want to see how many values have exceed the threshold of 0.05 in this. Thanks for the help.

0 Comments

Hamza

Products

No products are associated with this question.

2 Answers

Answer by Azzi Abdelmalek on 6 Jan 2013
Edited by Azzi Abdelmalek on 6 Jan 2013
Accepted answer
max_value= [0.0390719994902611
0.0769229978322983
0.0561660006642342
0.0695969983935356
0.0720390006899834
0.0463979989290237
0.0317460000514984
0.0293039996176958
0.0317460000514984
0.0280830003321171
0.0378509983420372]
 idx=find(max_value>=0.05)

%don't max as a variable(reserved to max function)

3 Comments

Hamza on 6 Jan 2013

Thanks, but "find" only gives the indices and I want to have the values >0.05

Azzi Abdelmalek on 6 Jan 2013
idx=find(max_value>=0.05)
value=max_value(idx)
Jan Simon on 6 Jan 2013

As MLint mentions in the editor, when you type this in a function, the find() is slower than a logical indexing in almost all cases:

value = max_value(max_value >= 0.05);
Azzi Abdelmalek
Answer by Image Analyst on 6 Jan 2013
Edited by Image Analyst on 6 Jan 2013

To see "how many values have exceed the threshold of 0.05" you can use this code:

howManyValues = sum(max_value>0.05);

0 Comments

Image Analyst

Contact us