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.

 Respuesta aceptada

Matt Fig
Matt Fig el 29 de Mzo. de 2011

2 votos

If DAT is your original data.
NewDAT = DAT(round(linspace(1,length(DAT),101)))

3 comentarios

Jason
Jason el 29 de Mzo. de 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 el 29 de Mzo. de 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 el 29 de Mzo. de 2011
Thank you, that worked perfectly

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 29 de Mzo. de 2011

Community Treasure Hunt

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

Start Hunting!

Translated by