Matrix reduction

I have a very large set of data of over 1000 readings in [A]. I need to reduce the data to 101 readings evenly spaced over the original data set. Can anyone give me some help, or point me in the right direction? Any help would be much appreciated.

 Accepted Answer

Matt Fig
Matt Fig on 29 Mar 2011
If DAT is your original data.
NewDAT = DAT(round(linspace(1,length(DAT),101)))

3 Comments

Jason
Jason on 29 Mar 2011
The DAT is a (3529,2), when I do what you suggested it gives me a (101,1). My data is (T,R) matrix as in readings vs time. What I need is 101 samples of the data with the time and the value associated with the time. I am new to MatLab, only been working with it for a few months so I not know a lot of the functionality of it.
Matt Tearle
Matt Tearle on 29 Mar 2011
NewDAT = DAT(round(linspace(1,length(DAT),101)),:)
Indexing in MATLAB is A(row,column). Using : in place of column gives all columns (for the specified rows).
Jason
Jason on 29 Mar 2011
Thank you, that worked perfectly

Sign in to comment.

More Answers (0)

Categories

Asked:

on 29 Mar 2011

Community Treasure Hunt

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

Start Hunting!