how can create date string for 360 days like this yyyymmdd ?

3 Ansichten (letzte 30 Tage)
varunesh
varunesh am 11 Mai 2017
Kommentiert: Rik am 11 Mai 2017
hello every one, how can create date string for 2005/12/01 to 2045/11/30 if each year include 360 days and each months include 30 days. I am trying from this
date =datestr(datenum('2005/12/01'):datenum('2045/11/30'),'yyyymmdd');
but unable to get right answer. This is giving 365 and 366 days in year. Thank you so much in advance.

Antworten (1)

KL
KL am 11 Mai 2017
Bearbeitet: KL am 11 Mai 2017
ny = 3; %number of years
sy = 2005; %start year
y = sy:sy+ny;
FD = [];
for i = 1:ny
daysOfYear = [num2str(repmat(y(i),360,1))...
num2str(reshape(repmat(1:12,30,1),360,1))...
num2str(reshape(repmat(1:30,12,1)',360,1))];
daysOfYear(daysOfYear==' ')='0';
FD = [FD; daysOfYear];
end
  1 Kommentar
Rik
Rik am 11 Mai 2017
You can also use sprintf. That way you can avoid filling a variable in a loop.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by