How do I remove element lower/greater than a certain value in a matrix?

262 views (last 30 days)
Lets say I have
A = 1
3
2
7
4
10
12
9
8
15
13
So in this case, i want to remove values lower than 5 and greater than 11 , so i will end up getting this:
A = 7
10
9
8
How should I do this?

Accepted Answer

Image Analyst
Image Analyst on 5 Nov 2014
Try this:
A = [1
3
2
7
4
10
12
9
8
15
13]
rowsToDelete = A < 5 | A > 11
A(rowsToDelete) = []
Give you exactly what you asked for.

More Answers (1)

dpb
dpb on 5 Nov 2014
Use my helper function iswithin
>> A(iswithin(A,5,11))
ans =
7
10
9
8
>> >> type iswithin
function flg=iswithin(x,lo,hi)
% returns T for values within range of input
% SYNTAX:
% [log] = iswithin(x,lo,hi)
% returns T for x between lo and hi values, inclusive
flg= (x>=lo) & (x<=hi);

Categories

Find more on Data Types in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!