given two dates (1/1/2012, 12/1/2012), how to have an array of months (1/1/2011,​2/1/2011,.​..,12/1/20​12)??

given two dates (1/1/2012, 12/1/2012), how to have an array of months between the two dates[1/1/2011,2/1/2011,...,12/1/2012]??

Risposte (2)

something like this maybe
dv=datenum('1/1/2012'): datenum('12/1/2012');
dv=datevec(dv);
dv=datenum(dv(dv(:,3)==1,:)); %only take dates where day==1
datestr(ans)

3 Commenti

Nice! I think you meant datestr(dv) though.
This could be easily modifed to do weird dates to March 3rd to July 3rd etc
Thanks very much, it works perfect and get me learnt things.
Glad to help, I do lots of time series analysis.

Accedi per commentare.

nummon = 12; %stats for 12 conseq months
monstarts = datenum( [2012*ones(nummon,1), (1:nummon).',
ones(nummon,1)]);
The above would be in serial date format. You can use datestr() to convert to printable dates.

Tag

Richiesto:

il 27 Gen 2012

Community Treasure Hunt

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

Start Hunting!

Translated by