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

75 vues (au cours des 30 derniers jours)
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

Réponse acceptée

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

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by