Convert numeric representation of a date to date number.
Syntax: @makedate(arg1[, arg2[,arg3]], fmt)
arg1: number
args: (optional) number(s) arg2, arg3, ...
fmt: date format
Return: date number
Takes the numeric values given by the arguments arg1, and optionally, arg2, etc. and returns a date number using the required format string, fmt.
If more than one argument is provided, the arguments must be listed from the lowest frequency to the highest, with the first field representing either the year or the hour.
Examples
The expressions,
@makedate(1999, "yyyy")
@makedate(99, "yy")
both return the date number 729754.0 corresponding to 12 midnight on January 1, 1999.
@makedate(199003, "yyyymm")
@makedate(1990.3, "yyyy.mm")
@makedate(1031990, "ddmmyyyy")
@makedate(30190, "mmddyy")
all return the value 726526.0, representing March 1, 1990.
Dates may be created using multiple arguments. The expressions,
@makedate(97, 12, 3, "yy mm dd")
@makedate(1997, 12, 3, "yyyymmdd")
will return the value 729360.0 corresponding to midnight on December 3, 1997. You may provide a subset of this information so that
@makedate(97, 12, "yymm")
returns the value 729358.0 representing the earliest date and time in December of 1997 (12 midnight, December 1, 1997). Likewise,
@makedate(1997, 37, "yyyy ddd")
yields the value 729060.0 (February 6, 1997, the 37th day of the year) and
@makedate(14, 25, 10, "hh mi ss")
fills the series YM with date numbers for observations in the workfile sample.
If Y is a series containing year data, M is a series containing month data, and DT is a series containing day data,
series ymd = @makedate(y, m, dt, "yyyymmdd")
fills the series YMDSTR with date numbers formed using those series, for observations in the workfile sample.
Let MYDATE is a series that contains values with the year and month combined in a single number (e.g., “201011”, “200505”),
mydate = y * 100 + m
series ym = @makedate(mydate, "yyyymm")
Then YM contains the date number associated with MYDATE.
If YVEC is a vector with (hour*10000 + minute*100 + seconds) values,
vector yearvec = @makedate(yvec, "hhmiss")
fills YEARVEC with the date numbers associated with each element of YVEC.
Cross-references
See
@datestr for string representations of date numbers.