一、data步相关函数 1、math function Lagn(variable)表示变量滞后n期,当n为1时,即lag(variable) Difn(variable)表示变量差分n期,当n为1时,即dif(variable) 另外还有log、exp、log10等数学函数 2、date and time function Mdy(month,day,year)生成year年month月day日的SAS日期值 Dhms(date,hour,minute,second) Hms(hour,minute,second) Year(value)从value中抽取年份year值 Month(value) Qtr(value)从value中抽取季度值 Week(value) Weekday(value) 类似的还有day、hour、minute、second Datepart(date-time-value)得到date-time-value中日期值 Timepart(date-time-value)得到date-time-value中时间值 data time; x=mdy(5,10,2010); m=month(x); y=datepart('4jun2010:20:48:15'dt); z=timepart('4jun2010:20:48:15'dt); put y= m= y= z=; run; y=18417 m=5 y=18417 z=74895(说明sas系统里面记录的数据被转换了,以数值方式呈现,系统以1960年1月1日0时为0,这个时间之后值记录为正值,之前的值为负值) 3、相关的格式 Sas系统中有很多时间方面的格式 主要有mmddyyn.和 daten.。 另外可以自己写format和picture。 data time1; x=mdy(5,10,2010); put x= date9.; put x= yymmdd10.; run; x=10MAY2010 x=2010-05-10 Intck(‘interval’,starttime,endtime)计算开始时间到结束时间的间隔周期数 Interval 可以是 day、week、year等等 Intnx(‘interval’,from,n)计算从from开始经过n个in间隔后的SAS日期 二、过程步 proc arima PROC ARIMA options ; IDENTIFY VAR=variable options; ESTIMATE options ; FORECAST options ; (1)identify 语句 Var=variable 指出分析的变量,后面的options有: Nlag= n ----------- 计算自相关系数时最大时间间隔个数。 Center ------------ 减去样子均值使时间序列中心化。 Crosscorr= variables ---- 交互相关的变量名。 (2)Estimate语句 P= q= 即估计为arma(p,q); “options”部分有以后选项: Method=name --- 参数估计方法 。其中,“name”可取为: Ml ----- 极大似然估计 Cls ----- 条件最小二乘法 Uls ----- 无条件最小二乘法 (3)Forecast 语句 Lead 表示向前预测的次数 alpha=a——设置预测置信限的大小。上下置信限的置信水平为1-a。a的默认值为5%。 Id 表示预测的标示变量,一般指时间、日期。 Interval 指定预测变量的间隔 Out=data 将预测数值输出到指定的数据集 例子: 通过运用时间序列模型对我国1990年至2010年21年的人口数据进行了拟合,并给出了相应模型,进而对2011年、2012年以及2013年人口数据预测。 proc arima data=population; identify var=y1 nlag=9 minic; estimate p=2 q=1 method=cls noint ; forecast lead=3 id=date interval=year out=population1; run;
|