moving window with 30-year data

1 次查看(过去 30 天)
Hello, I have a matrix of time series data as attached. Time series lengths from 1970-2012. I need to extract moving block of 30-year window from this, with moving a year on every-time step. For example, the first block from 1970-2009, 2nd block 1971-2010, 1972-2011, and so on.
so something like this:
for i=size(unique(matrix(:,1),1)
30_yrblock = [my timeseries]
do whatever calculation with 30-year window
Result(i,:) = [];
end
However, I am not sure how to do so. Any help please?
Thanks!

回答(1 个)

Steven Lord
Steven Lord 2017-10-16
Use the movmean function with the SamplePoints option. See the "Sample Points for Moving Average" example on that documentation page.
Alternately if your data is stored in a timetable use the retime function.
  1 个评论
Poulomi Ganguli
Poulomi Ganguli 2017-10-16
Thanks but I am not calculating moving average. I need a 30-year moving window.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by