Selecting from a range of values from a column matrix

1 vue (au cours des 30 derniers jours)
Austin Ukpebor
Austin Ukpebor le 7 Oct 2021
I have a column matrix (398404 x1). I want any values less than 42 between rows 290360 and 380876 to be 5 while values outside those rows remain the same. Please I need help. Thank you.

Réponse acceptée

Walter Roberson
Walter Roberson le 7 Oct 2021
r1 = 290360; r2 = 380876;
extract = YourMatrix(r1:r2);
extract(extract < 42) = 5;
YourMatrix(r1:r2) = extract;
or...
r1 = 290360; r2 = 380876;
rowidx = (1:numel(YourMatrix)).';
mask = rowidx >= r1 & rowidx <= r2 & YourMatrix < 42;
YourMatrix(mask) = 5;
  1 commentaire
Austin Ukpebor
Austin Ukpebor le 7 Oct 2021
It works! Apart from array indexing, what other areas would you recommend I read up?
Thank you.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by