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]??

Réponses (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 commentaires

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.

Connectez-vous pour commenter.

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.

Catégories

Tags

Question posée :

le 27 Jan 2012

Community Treasure Hunt

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

Start Hunting!

Translated by