9000 REM *** HP TIME-SHARED BASIC PROGRAM LIBRARY ****************** 9001 REM MULREG: 36178 (A404) REV A --9/71 9002 REM *** CONTRIBUTED PROGRAM * MULTIPLE REGRESSION/CORRELATION * 9003 DIM X(10,10),A(10,10),D(50,10),Y(10),M(10),S(10) 9004 DIM T(10),B(10),U(10,10),R(10,10),C(10,10),Q(50),E(10) 9005 READ N,V,G 9006 FOR I=2 TO N+1 9007 FOR J=2 TO V+1 9008 READ D(I,J) 9009 NEXT J 9010 NEXT I 9011 FOR I=2 TO N+1 9012 LET D(I,1)=1 9013 NEXT I 9014 READ H,K,P1,P2015 LET M=K+1 9016 FOR I=2 TO M+1 9017 READ E(I) 9018 NEXT I 9019 PRINT "**REGRESSION NUMBER"H":DEPENDENT VARIABLE IS"E(M+1) 9020 PRINT 9021 IF H>1 THEN 9036 9022 FOR I=1 TO V+1 9023 FOR J=1 TO V+1 9024 LET X=0 9025 FOR L=2 TO N+1 9026 LET X=X+D(L,I)*D(L,J) 9027 NEXT L 9028 LET X(I,J)=X 9029 LET C(I,J)=X 9030 NEXT J 9031 LET T(I)=X(1,I)/X(1,1) 9032 LET B(I)=0 9033 IF I=1 THEN 9035 9034 LET B(I)=SQR(X(I,I)/(N-1)-X(1,I)*X(1,I)/(N*(N-1))) 9035 NEXT I 9036 PRINT "DEX","MEANS","STANDARD DEVIATIONS" 9037 FOR I=2 TO M+1 9038 LET M(I)=T(E(I)+1) 9039 LET S(I)=B(E(I)+1) 9040 PRINT E(I),M(I),S(I) 9041 NEXT I 9042 PRINT 9043 PRINT 9044 PRINT "CORRELATION COEFFICIENTS" 9045 IF H>1 THEN 9051 9046 FOR I=2 TO V+1 9047 FOR J=2 TO V+1 9048 LET R(I,J)=(N*X(I,J)-X(1,I)*X(1,J))/(N*(N-1)*B(I)*B(J)) 9049 NEXT J 9050 NEXT I 9051 FOR I=2 TO M+1 9052 FOR J=2 TO M+1 9053 LET U(I,J)=R(E(I)+1,E(J)+1) 9054 PRINT U(I,J), 9055 NEXT J 9056 PRINT 97 PRINT 9058 NEXT I 9059 PRINT 9060 LET E(1)=0 9061 FOR I=1 TO K+1 9062 LET Y(I)=C(E(I)+1,E(M+1)+1) 9063 FOR J=1 TO K+1 9064 LET X(I,J)=C(E(I)+1,E(J)+1) 9065 NEXT J 9066 NEXT I 9067 FOR I=1 TO K+1 9068 FOR J=1 TO K+1 9069 IF I <> J THEN 9072 9070 LET A(I,J)=1 9071 GOTO 9073 9072 LET A(I,J)=0 9073 NEXT J 9074 NEXT I 9075 FOR I=1 TO K+1 9076 IF X(I,I)<.000001 THEN 9150 9077 LET Y(I)=Y(I)/X(I,I) 9078 FOR J=1 TO K+1 9079 LET A(I,J)=A(I,J)/X(I,I) 9080 IF J=I TN 9082 9081 LET X(I,J)=X(I,J)/X(I,I) 9082 NEXT J 9083 LET X(I,I)=1 9084 FOR L=1 TO K+1 9085 IF L=I THEN 9093 9086 LET Y(L)=Y(L)-X(L,I)*Y(I) 9087 FOR J=1 TO K+1 9088 LET A(L,J)=A(L,J)-X(L,I)*A(I,J) 9089 IF J=I THEN 9091 9090 LET X(L,J)=X(L,J)-X(L,I)*X(I,J) 9091 NEXT J 9092 LET X(L,I)=0 9093 NEXT L 9094 NEXT I 9095 LET S6=C(E(M+1)+1,E(M+1)+1) 9096 FOR I=1 TO K+1 9097 LET S6=S6-Y(I)*C(E(I)+1,E(M+1)+1) 9098 NEXT I 9099 LET S7=S6/(N-M) 9100 R2=1-(S6/((S(M+1)^2)*(N-1)))9101 LET R=SQR(R2) 9102 LET S8=SQR(S7) 9103 IF P1=0 THEN 9105 9104 PRINT "VARIANCE-COVARIANCE MATRIX" 9105 FOR I=1 TO K+1 9106 FOR J=1 TO K+1 9107 LET A(I,J)=A(I,J)*S7 9108 IF P1=0 THEN 9110 9109 PRINT A(I,J), 9110 NEXT J 9111 IF P1=0 THEN 9114 9112 PRINT 9113 PRINT 9114 NEXT I 9115 PRINT 9116 PRINT "INDEX","B","STD. ERROR","T-RATIO" 9117 FOR I=1 TO K+1 9118 PRINT E(I),Y(I),SQR(A(I,I)),Y(I)/SQR(A(I,I)) 9119 NEXT I 9120 PRINT 9121 PRINT "R-SQUARED="R2,"R="R 92 PRINT 9123 PRINT "STAND. ERROR OF EST.=";S8,"D.F.=";(N-M) 9124 PRINT 9125 FOR I=2 TO N+1 9126 LET Z=D(I,E(M+1)+1)-Y(1) 9127 FOR J=2 TO K+1 9128 LET Z=Z-Y(J)*D(I,E(J)+1) 9129 NEXT J 9130 LET Q(I)=Z 9131 NEXT I 9132 LET W=0 9133 FOR I=3 TO N+1 9134 LET W=W+(Q(I)-Q(I-1))^2 9135 NEXT I 9136 PRINT 9137 IF P2=0 THEN 9144 9138 PRINT "ACTUAL","PREDICTED","RESIDUAL" 9139 LET I=1 9140 LET I=I+1 9141 PRINT D(I,E(M+1)+1),D(I,E(M+1)+1)-Q(I),Q(I) 9142 IF I=N+1 THEN 9144 43 GOTO 9140 9144 PRINT 9145 PRINT "DURBIN-WATSON STAT.="W/S6 9146 IF H