* SPATIALRATS_1 ESTIMATES A SPATIAL LINEAR REGRESSION * USING THE MATRIX EXPONENTIAL SPATIAL SPECIFICATION * (MESS) OF LeSAGE AND PACE: * * J. P. LeSAGE AND R. K. PACE (2007). A MATRIX * EXPONENTIAL SPECIFICATION. J. OF ECONOMETRICS * 140, 190-214. * * J. P. LeSAGE AND R. K. PACE (2009). INTRO. TO * SPATIAL ECONOMETRICS. CRC PRESS/CHAPMAN AND HALL, * CHAPTER 9. * * IN MESS, SPATIAL LAGS DECAY EXPONENTIALLY RATHER THAN * GEOMETRICALLY AS IN CONVENTIONAL SPATIAL MODELS. MORE * IMPORTANTLY, LeSAGE AND PACE SHOW THAT MESS HAS * SIGNIFICANT COMPUTATIONAL AND STATISTICAL ADVANTAGES. * FOR PURPOSES OF COMPARISON, THE GEOMETRIC-DECAY PARAMETER * (RHO) CAN BE ESTIMATED FROM THE EXPONENTIAL-DECAY PARAMETER * (ALPHA) AND IS REPORTED IN THE OUTPUT OF THIS PROGRAM. * * N = THE NUMBER OF OBSERVATIONS IN THE DATA SET * NN = THE NUMBER OF NEAREST NEIGHBORS * Q = THE NUMBER OF TERMS USED IN THE TAYLOR EXPANSION OF * EXP(ALPHA). CURRENTLY Q = 6. * * SPATIALRATS_1 ASSUMES THAT THE USER HAS A N x NN MATRIX * (E.G., NNFILE.TXT) WHOSE I-TH ROW CONTAINS THE NN NEAREST * NEIGHBORS OF OBSERVATION I. USUALLY NNFILE.TXT WILL HAVE * BEEN PREPARED USING SPECIALIZED SPATIAL SOFTWARE. * SPATIALRATS_1 USES A PROCEDURE SPATWEIGHT2.SRC TO COMPUTE * SPATIAL WEIGHTS (LAGS) FOR THE DEPENDENT VARIABLE AND * OPTIONALLY FOR THE REGRESSORS. THEREFORE, SPATIALRATS_1 * MUST BE ABLE TO ACCESS SPATWEIGHT2.SRC. * SOURCE SPATWEIGHT2.SRC OPEN DATA MYFILE.XLS COMPUTE N = 200 COMPUTE NN = 5 ALL N * READ THE REGRESSOR(S) AND THE DEPENDENT VARIABLE DATA(UNIT=DATA,ORG=OBS,FORMAT=XLS) 1 N X Y COMPUTE Q = 6 DEC VEC[INTEGER] NNVEC(NN*N) DEC SERIES SY YIN YOUT DV DEC REAL ALPHA LL KK DEC INTEGER I NONLIN ALPHA * READ THE NEAREST-NEIGHBOR FILE OPEN DATA NNFILE.TXT READ(UNIT=DATA) NNVEC * WHICH IS THE DEPENDENT VARIABLE ? SET DV 1 N = Y * CREATE A SPATIAL LAG FOR X @SPATWEIGHT2 X WX 1 N NNVEC NN * BELOW THIS POINT, THE ONLY REQUIRED USER INPUT * IS THE LIST OF REGRESSORS ON THE TWO LINREG COMMANDS * RUN THE MESS MODEL COMPUTE ALPHA = 0.0 FIND(METHOD=BFGS,STDERRS) MAXIMUM LL { SET SY 1 N = DV SET YIN 1 N = DV DO I = 1,Q COMPUTE KK = FLOAT(I) @SPATWEIGHT2 YIN YOUT 1 N NNVEC NN SET SY 1 N = SY + YOUT*ALPHA**I/%FACTORIAL(KK) SET YIN 1 N = YOUT END DO I LINREG(NOPRINT) SY 1 N # X WX CONSTANT COMPUTE LL = %LOGL } END FIND COMPUTE RHO = 1.0 - EXP(ALPHA) DISPLAY ' ' DISPLAY 'ESTIMATE OF RHO FROM MESS ' RHO DISPLAY ' ' LINREG(ROBUSTERRORS) SY 1 N # X WX CONSTANT