I want to create three tables in Matlab Year,Month and Day and then concatenate into one column so that
1970 1 1
1970 1 2
.
.
.
1970 12 1

1 Comment

Azzi Abdelmalek's answer is the fastest, neatest, and best solution to this question.

Sign in to comment.

 Accepted Answer

clc; clear all
iwant = [ ];
for i = 1:12
d = calendar(1970,i)' ;
d(d==0) = [] ;
d = d(:) ;
y = repmat(1970,[length(d) 1]) ; % year
m = repmat(12,[length(d) 1]) ; % month
ymd = [y m d] ;
iwant = [iwant ; ymd] ;
end
there could be some other elegant way..

More Answers (1)

d1=datenum('01-01-1971','dd-mm-yyyy')
d2=datenum('31-12-1971','dd-mm-yyyy')
d=datevec(d1:d2)
d=d(:,1:3)

Categories

Find more on Language Fundamentals in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!