specify array with values

1 次查看(过去 30 天)
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

采纳的回答

Steven Lord
Steven Lord 2019-7-2
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 个评论
Syeda Amberin
Syeda Amberin 2019-7-2
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 2019-7-2
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

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by