悬赏 1 个论坛币 未解决
程序如下:
SET LENGTH=NONE.
SET MXLOOP=1000000000.
MATRIX.
GET W/VARIABLES=all/FILE=E://海淀区.sav.
COMPUTE NC=NCOL(W).
COMPUTE NR=NROW(W).
COMPUTE f20=MAKE(NR,1,0).
COMPUTE f8=MAKE(NR,NC,1).
COMPUTE YLAM=MAKE(NR,1,1).
COMPUTE BOXCOX=MAKE(61,2,0).
COMPUTE YTEMP=0.
LOOP II=1 TO NR.
COMPUTE Y(II,1)=W(II,1).
LOOP JJ=1 TO NR.
COMPUTE YTEMP=0
LOOP II=1 TO NC-1.
COMPUTE XX(II,JJ+1)=W(II,JJ+1).
END LOOP.
COMPUTE YTEMP=YTEMP+LN(Y(II)).
END LOOP.
LOOP TEMP=1TO61.
COMPUTE LAMBDA=-3.1+TEMP*0.1.
DO IF LAMBDA=0.
COMPUTE YLMA(:)=LN(Y(:)).
ELSE.
COMPUTE YLAM(:)=(Y(:)&**LAMBDA-1)/LAMBDA.
END IF.
COMPUTE BETA=INV(T(XX)*XX)*T(XX)*YLAM.
COMPUTE MSE=T(YLAM-XX*BETA)*(YLAM-XX*BETA)/NR.
COMPUTE LOGLIKE=-1*NR/2*LN(MSE)+(LAMBDA-1)*YTEMP.
COMPUTE BOXCOX(TEMP,1)=LAMBDA.
COMPUTE BOXCOX(TEMP,2)=LOGLIKE.
END LOOP.
SAVE BOXCOX/OUTFILE=*.
END MATRIX.
RENAME VARIABLES COL1=LAMBDA COL2=LOGLIKE.
这个程序传闻可以在SPSS中实现BOX-COX,本人特感兴趣,但在实际运用中不知如何代替数据,有人会吗?会的话联系本人,教会本人,必有人民币报酬