1  REM  ****  HP BASIC PROGRAM LIBRARY  *******************************
2  REM
3  REM        ANOVA3:   THREE FACTORIAL ANALYSIS OF VARIANCE
4  REM
5  REM        36271 REV  A   6/73
6  REM
7  REM  ****  CONTRIBUTED PROGRAM  ************************************
10  REM  THREE-WAY ANALYSIS OF VARIANCE  MAY/1972
20  REM  GENERAL STATISTICS PROGRAM
30  REM  DATA STARTS AT 9000, #ROWS,COLUMNS,LAYERS,N/CELL
40  REM      WILL TAKE UP TO 8X8X8
50  REM      START AT L1,R1,C1; THEN L1,R1,C2, ETC.
60  REM
70  DIM X[9,81]
80  READ R,C,L,N
90  N1=N*R*C*L
100  C1=K1=M1=O1=P1=Q1=R1=S1=T1=0
110  MAT X=ZER[R+1,(C+1)*(L+1)]
120  F=(C+1)*L
130  FOR K=0 TO L-1
140  FOR I=1 TO R
150  FOR J=1 TO C
160  F2=K*(C+1)
170  FOR M=1 TO N
180  READ X
190  C1=C1+X^2
200  X[I,F2+J]=X[I,F2+J]+X
210  NEXT M
220  X[I,F+J]=X[I,F+J]+X[I,F2+J]
230  K1=K1+X[I,F2+J]^2/N
240  NEXT J
250  NEXT I
260  NEXT K
270  FOR K=0 TO L
280  FOR I=1 TO R
290  FOR J=1 TO C
300  F2=K*(C+1)
310  X[R+1,F2+J]=X[R+1,F2+J]+X[I,F2+J]
320  X[I,F2+C+1]=X[I,F2+C+1]+X[I,F2+J]
330  X[R+1,F2+C+1]=X[R+1,F2+C+1]+X[I,F2+J]
340  NEXT J
350  NEXT I
360  NEXT K
370  FOR K=0 TO L
380  F2=K*(C+1)
390  FOR I=1 TO R+1
400  FOR J=1 TO C+1
420  NEXT J
440  NEXT I
460  NEXT K
470  C2=X[R+1,F+C+1]^2/N1
480  T=C1-C2
490  B=K1-C2
510  W=T-B
520  FOR I=1 TO R
530  M1=M1+X[I,F+C+1]^2/(N1/R)
540  NEXT I
550  M1=M1-C2
560  FOR J=1 TO C
570  O1=O1+X[R+1,F+J]^2/(N1/C)
580  NEXT J
590  O1=O1-C2
600  FOR K=0 TO L-1
610  F2=K*(C+1)
620  P1=P1+X[R+1,F2+C+1]^2/(N1/L)
630  NEXT K
640  P1=P1-C2
650  FOR I=1 TO R
660  FOR J=1 TO C
670  Q1=Q1+X[I,J+F]^2/(N1/(R*C))
680  NEXT J
690  NEXT I
700  Q1=Q1-M1-O1-C2
710  FOR K=0 TO L-1
720  F2=K*(C+1)
730  FOR I=1 TO R
740  R1=R1+X[I,F2+C+1]^2/(N1/(L*R))
750  NEXT I
760  FOR J=1 TO C
770  S1=S1+X[R+1,F2+J]^2/(N1/(C*L))
780  NEXT J
790  NEXT K
800  R1=R1-P1-M1-C2
810  S1=S1-O1-P1-C2
820  T1=B-M1-O1-P1-Q1-R1-S1
830  D1=R-1
840  D2=C-1
850  D3=L-1
860  D4=D1*D2
870  D5=D1*D3
880  D6=D2*D3
890  D7=D1*D2*D3
900  D8=R*C*L*(N-1)
910  D9=N1-1
920  Z1=M1
930  M1=M1/D1
940  M2=O1/D2
950  M3=P1/D3
960  M4=Q1/D4
970  M5=R1/D5
980  M6=S1/D6
990  M7=T1/D7
1000  M8=W/D8
1010  F1=M1/M8
1020  F2=M2/M8
1030  F3=M3/M8
1040  F4=M4/M8
1050  F5=M5/M8
1060  F6=M6/M8
1070  F7=M7/M8
1080  PRINT '10'10'10"SOURCE TABLE"
1085  PRINT '10"          SUM OF SQUARES       DF     MEAN SQUARE            F"
1086  PRINT 
1090  PRINT "ROW     ";Z1,D1;M1,F1
1100  PRINT "COLUMN  "O1,D2;M2,F2
1110  PRINT "LAYER   "P1,D3;M3,F3
1120  PRINT "R*C     "Q1,D4;M4,F4
1130  PRINT "R*L     "R1,D5;M5,F5
1140  PRINT "C*L     "S1,D6;M6,F6
1150  PRINT "R*C*L   "T1,D7,M7,F7
1160  PRINT "W/GROUP "W,D8;M8
1170  PRINT "----------------------------------------------------------------"
1180  PRINT "TOTAL   "T,D9
1190  STOP 
9000  DATA 2,3,2,6
9001  DATA 27,22,45,18,76,33
9002  DATA 31,37,52,45,86,66
9003  DATA 55,62,76,85,104,126
9004  DATA 55,40,81,50,36,70
9005  DATA 77,76,98,68,42,104
9006  DATA 132,104,96,70,89,142
9007  DATA 61,39,76,60,46,59
9008  DATA 61,71,82,92,103,105
9009  DATA 140,122,99,92,68,101
9010  DATA 88,92,95,103,51,73
9011  DATA 100,120,120,131,89,76
9012  DATA 142,150,96,105,80,125
9999  END 
