How to filter a certain range of values in a column vector of thousand rows

75 visualizzazioni (ultimi 30 giorni)
I want to find a range of values in a column vector of a minimum value of 20% and a maximum value of 90%. The column has 2000 rows. suppose i want to filter values between a range of 70% to 80%. sample code for i = 1:length(PP) if (70% <= PP(i) <= 80%) filtered_PP(i) = PP(i) end end I later separate it and still i'm not getting the correct the answer
for i = 1:length(PP) if (70% <= PP(i) && 80% >= PP(i)) filtered_PP(i) = PP(i) end end

Risposta accettata

TAB
TAB il 25 Mag 2018
PP = (0:100)';
filtered_PP_Idx = find((PP>=73 & PP<=80));
filtered_PP = PP(PP>=70 & PP<=80);
  3 Commenti
Ian Larson
Ian Larson il 8 Apr 2022
Say PP was on a time x axis. How would I find the corresponding X values?
jhoan giraldo
jhoan giraldo il 26 Apr 2022
You already have the indexes in filtered_PP_Idx. If you have for example a 'time' vector:
time_indexed=time(filtered_PP_Idx);

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by