DATA ONE; * creates a data set called ONE ; INFILE 'c:\windows\desktop\document\ex6.22' firstobs=2; * reads data, skip line 1; input Year G Pg Y Pnc Puc Ppt Pd Pn Ps ; * INPUT variable names ; lg=log(g); * take the natural logs of variables ; lpg=log(Pg); ly=log(y); lPnc=log(pnc); lpuc=log(puc); lPpt=log(ppt); lpd=log(pd); lPn=log(pn); lps=log(ps); int=1; ******************* Procedures ************************; PROC means data=one; * call procedure MEANS use data ONE; Proc autoReg; model lg = lpg ly lpnc lpuc ppt lpd lpn lps; Proc IML; vname= { int, GasPrice, inc, NewCar, UsedCar, Public, durables, non_dur, services}; use one; read all var{lg} into y; read all var{ int lpg ly lpnc lpuc ppt lpd lpn lps } into x; T=nrow(X); K=ncol(X); b=inv(x`*x)*x`*y; /* Sigma squared */ sig2=(y-x*b)`*(y-x*b)/(T-K); print sig2; /* Estimated Covariance Matrix */ cov=sig2*inv(x`*x); print cov; /* Standard Errors */ se=sqrt(vecdiag(cov)); /* Tvalues */ tvals=b/se; print vname b se tvals; /* R-square */ yhat=x*b; ybar=sum(y)/t; SSR=ssq(yhat-ybar); SST=ssq(y-ybar); SSE=ssq(y-x*b); r2=ssr/sst; print SSR SST SSE r2 ybar; run; * RUN the program;