日期时间数据及数据格式 (一)SAS日期和时间数据 SAS 将所有的日期转化成一个以1960 年1 月1 日为起点的数值(日期数值)
比如: January 1, 1960 0 January 1, 1959 -365 January 1, 1961 366 January 1, 2020 21915 SAS 处理日期数据包括:读取日期格式的数据,使用日期函数处理日期,按指定格式输出日期
一、 读取日期格式的数据 1
即按格式读入数据(formatted input),见系列 03
比如, input BirthDate MMDDYY10
设定默认的百年 07/04/76 这样的数据可能是 1976,也可能是 2076、1776
因此需要 YEARCUTOFF = 来指定一个一百年的第一年,默认的是 1920 年
例如,下面的语句就是告诉 SAS 将一个两位年份的日期解释为1960 年到2049 年之间: OPTIONS YEARCUTOFF = 1950; 3
SAS 日期的存取 日期一旦被以SAS 以日期格式读取之后,就将此数据像其他数值数据一样用在表达式中(日期数值)
例如,像为图书馆的书设定21 天的还书日期,只需要在借书日期上加上21: DueDate = CheckDate + 21; 通过引号和字母D,可以将一个日期当作常数来使用,下面的代码创建了一个EarthDay05 的日期变量,其值等于April 22, 2005 EarthDay05='22APR2005'D; 二、 使用日期函数处理日期 SAS 提供的日期函数使得处理日期的操作大大简便
例如,today( ) 返回今天的日期; 计算一本书应归还的剩余期限,就可以用: DaysOverDue = DateDue - today(); 用出生日期Birt