8990  REM  ***  HP TIME-SHARED BASIC PROGRAM LIBRARY  *********************
8991  REM
8992  REM          ANVAR2:  36040  (A410)  REV B -- 9/71
8993  REM          ANALYSIS OF VARIANCE (LATIN SQUARE DESIGN)
8994  REM 
8995  REM  ***  CONTRIBUTED PROGRAM  *************************************
9002  REM  ANALYSIS OF VARIANCE
9003  DIM C[10],T[10]
9004  READ N
9005  MAT  READ M[N,N]
9006  MAT R=ZER
9007  MAT C=ZER
9008  MAT T=ZER
9009  LET S=S0=0
9010  FOR I=1 TO N
9011  FOR J=1 TO N
9012  READ X
9013  LET R[I]=R[I]+X
9014  LET C[J]=C[J]+X
9015  LET T[M[I,J]]=T[M[I,J]]+X
9016  LET S=S+X
9017  LET S0=S0+X*X
9018  NEXT J
9019  NEXT I
9020  LET S4=S5=S6=0
9021  FOR I=1 TO N
9022  LET S4=S4+R[I]^2
9023  LET S5=S5+C[I]^2
9024  LET S6=S6+T[I]^2
9025  NEXT I
9026  LET C=S*S/N/N
9027  LET S4=S4/N-C
9028  LET S5=S5/N-C
9029  LET S6=S6/N-C
9030  LET D1=N-1
9031  LET D2=D1*(N-2)
9032  LET S7=S0-C-S4-S5-S6
9033  PRINT "ITEM  ","SUM-SQR  ","DEG. FREE.  ","MEAN-SQR  ","F-RATIO"
9034  PRINT "----  ","-------  ","----------  ","-------- ","-------"
9035  LET S8=S7/D2
9036  PRINT "ROWS  ",S4,D1,S4/D1,S4/D1/S8
9037  PRINT "COLS  ",S5,D1,S5/D1,S5/D1/S8
9038  PRINT "TREATS",S6,D1,S6/D1,S6/D1/S8
9039  PRINT "ERROR",S7,D2,S8
9040  LET G=S4/D1/S8
9041  LET M=D1
9042  LET N=D2
9043  GOSUB 9049
9044  LET G=S5/D1/S8
9045  GOSUB 9049
9046  LET G=S6/D1/S8
9047  GOSUB 9049
9048  STOP 
9049  F=G
9050  A=2*INT(M/2)-M+2
9051  B=2*INT(N/2)-N+2
9052  W=F*M/N
9053  Z=1/(1+W)
9054  IF A#1 THEN 9064
9055  IF B#1 THEN 9061
9056  P=SQR(W)
9057  K=.31831
9058  D=K*Z/P
9059  P=2*K*ATN(P)
9060  GOTO 9071
9061  P=SQR(W*Z)
9062  D=.5*P*Z/W
9063  GOTO 9071
9064  IF B#1 THEN 9069
9065  P=SQR(Z)
9066  D=.5*Z*P
9067  P=1-P
9068  GOTO 9071
9069  D=Z^2
9070  P=W*Z
9071  K=2*W/Z
9072  FOR J=B+2 TO N STEP 2
9073  D=(1+A/(J-2))*D*Z
9074  IF A=1 THEN 9077
9075  P=(P+W)*Z
9076  GOTO 9078
9077  P=P+D*K/(J-1)
9078  NEXT J
9079  K=W*Z
9080  Z=2/Z
9081  B=N-2
9082  FOR I=A+2 TO M STEP 2
9083  J=I+B
9084  D=K*D*J/(I-2)
9085  P=P-Z*D/J
9086  NEXT I
9087  P=(P>1) MAX (0<P AND P<1)*P
9088  P=1-P
9089  IF P=1 AND F>1 THEN 9091
9090  IF P >= .001 THEN 9092
9091  P=0
9092  PRINT '10;"PROBABILITY OF F>=";F;"WITH";M;"AND";N;"D.F. IS";P
9093  RETURN 
9899  DATA 4
9900  DATA 1,2,3,4,4,1,2,3,3,4,1,2,2,3,4,1
9901  DATA 81,41,44,53
9902  DATA 38,97,42,49
9903  DATA 31,43,67,36
9904  DATA 57,33,43,81
9999  END 
