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

回答 (2 件)

Leah
Leah 2012 年 1 月 27 日
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 件のコメント

Sean de Wolski
Sean de Wolski 2012 年 1 月 27 日
Nice! I think you meant datestr(dv) though.
This could be easily modifed to do weird dates to March 3rd to July 3rd etc
Nan Shen
Nan Shen 2012 年 1 月 27 日
Thanks very much, it works perfect and get me learnt things.
Leah
Leah 2012 年 1 月 27 日
Glad to help, I do lots of time series analysis.

サインインしてコメントする。

Walter Roberson
Walter Roberson 2012 年 1 月 27 日
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.

カテゴリ

ヘルプ センター および File ExchangeTime Series Objects についてさらに検索

タグ

質問済み:

2012 年 1 月 27 日

Community Treasure Hunt

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

Start Hunting!

Translated by