Effacer les filtres
Effacer les filtres

specify array with values

3 vues (au cours des 30 derniers jours)
Syeda Amberin
Syeda Amberin le 2 Juil 2019
Commenté : Steven Lord le 2 Juil 2019
Hi,
I am trying to set up an array of values with lower and upper bounds. The lower bound (lb) is .1 and the upper bound (ub) is .25. I also have a table called Tab. I want to find all values in Tab(:,3) as long as they are within [lb and ub]. I am trying to use ismember because I am specifying for other columns using ismember. It would be nice if I could extract all rows from Tab(:,3) that fall between ub and lb using ismember. Any help?
Thanks

Réponse acceptée

Steven Lord
Steven Lord le 2 Juil 2019
ismember isn't the right tool for this task. Use the greater-than (>) and less-than (<) operators.
rng(0, 'twister');
x = rand(10, 1);
mask = (x > 0.25) & (x < 0.75);
T = table(x, mask, 'VariableNames', {'data', 'inRange'})
xInRange = x(mask)
  2 commentaires
Syeda Amberin
Syeda Amberin le 2 Juil 2019
Thanks. I have applied this method. But this means I will have to create a second table which I am avoiding. Your time is appreciated.
Steven Lord
Steven Lord le 2 Juil 2019
No. I built the table T just to show the results.
rng(0, 'twister');
x = rand(10, 1);
T = table(x);
mask = (T.x > 0.25) & (T.x < 0.75);
T(mask, :) % Sub-table
T{mask, 'x'} % Just the contents of the x variable from T

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by