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

5 views (last 30 days)
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);

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!