How do I select specific data?

90 views (last 30 days)
Charlie Finnie
Charlie Finnie on 21 Oct 2016
Hi I am new to Matlab and I'm trying to get my feet on the ground here.
I have 2 columns of data and but I only want to select data in column 2 for a given number of rows which I have defined using
> find(time<5)
where time is the number of the variable in column 1.
This has given me the row numbers for all the data I want, Now I was just wandering how I select the data in column 2 for these row numbers?

Answers (4)

Mischa Kim
Mischa Kim on 21 Oct 2016

Star Strider
Star Strider on 21 Oct 2016
If your (Nx2) array is called ‘data’:
ExtractedData = data(find(time<5),2);
should work.

Pico Technology
Pico Technology on 21 Oct 2016
Hi Charlie,
You can index a matrix using the row column indices - matrix dimensions are defined as number of rows x number of columns. The following article should help:
If r is the rows i.e.
r = find(time<5)
then you can extract the data from your 2nd column as follows (assuming x is the matrix)
y = x(r, 2);
Hope this helps.

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 10 Aug 2022
A simple solution is:
Select_Data = Data(time<5,2);


Find more on Resizing and Reshaping 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!

Translated by