MATLAB: Weekly to six monthly sum

accumarraydatesMATLABmatrix sumnansum

Hi All
I have a matrix (named "X") with dimension 2196,7
Matlab (weekly) dates are in the first column and next 6 columns have prices
I wish to add (nansum) the first six month values and this becomes one observation in a new matrix "Y". Similarly, the sum of next six month values becomes the 2nd observation in matrix Y. And we do this till the last date (observation 2196).
Thanks for helping me in advance.
Regards
AHM.

Best Answer

Y = reshape(nansum(reshape(X(:,2:7), [], 26, 6),2),[],6);
This will not have any date entries, but you did not define how you wanted that column handled. You could use
[X(1:26:end,1), Y]
if you wanted to select the first date of each group as indicating the time period.