Clear Filters
Clear Filters

Averages of Vectors

1 view (last 30 days)
Eric
Eric on 5 Mar 2012
I have a vector of temperature measurements every minute over a day and I need to convert this to a vector of 30 minute averages over the day. Any suggestions of how to do this effectively? Thanks
  1 Comment
Oleg Komarov
Oleg Komarov on 5 Mar 2012
Where do you have the timestamp? Is it a two column matrix with first column the timestamp and the second column the measurment?
Please provide a concise example by editing your message and apply formatting.

Sign in to comment.

Accepted Answer

Thomas
Thomas on 5 Mar 2012
Since you have reading one minute apart, you should have 24*40=1440 readings. You need 48 readings, i.e. mean from 1-30, 31-60 etc.. YOu can reshape your actual vector pf readings and find the mean as follows, Suppose A is you vector of 1440 readings
b=reshape(a,30,[]); % this reshapes your vector into 48 vectors
mean(b); % this finds the mean of each
  2 Comments
Oleg Komarov
Oleg Komarov on 5 Mar 2012
Clever but not robust.
Jisha
Jisha on 5 Mar 2012
Never thought I could use reshape this way.. :)

Sign in to comment.

More Answers (0)

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!