MATLAB Answers

Extracting xy coordinate points from a matrix, based on a limit for x.

3 views (last 30 days)
Nikan Fakhari
Nikan Fakhari on 8 Oct 2020
Answered: Ameer Hamza on 8 Oct 2020
Hi there,
I have a xy matrix as follows that contains x and y points. From xy matrix I would like to extract points that their x values are between 2 and 5.
for example I would like to extract these points, (3,7) and (4,8) and save them in a new variable.
can anyone help me with this?
I would rather not use for loop because Im trying to do the same operation with a large data set and Im trying to avoid the use of for loop.
Thank you very much.
x = [1,2,3,4,5]
y = [5,6,7,8,9]
xy=[x;y]
Thank you very much.

Answers (1)

Ameer Hamza
Ameer Hamza on 8 Oct 2020
Read about logical indexing
x = [1,2,3,4,5];
y = [5,6,7,8,9];
xy = [x;y];
idx = (x > 2) & (x < 5);
xy_new = xy(:, idx);

Community Treasure Hunt

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

Start Hunting!