1 ! PROGRAM FQS0, VERSION 1A (31-AUG-73) ! 2 ! PROGRAM FQS0 IS A PROGRAM IN THE FACTOR ANALYSIS CHAIN. ! IT IS ONE OF THE SEVERAL PROGRAMS AND FILES WHICH COMPOSE COSAP, ! LAWRENCE UNIVERSITY'S CONVERSATIONALLY ORIENTED STATISTICAL 3 ! ANALYSIS PACKAGE. COSAP IS DISTRIBUTED FOR EDUCATIONAL USE, ON ! THE CONDITION THAT IT NOT BE SOLD, RENTED OR LEASED FOR PROFIT. ! 4 ! IF YOU DESIRE FURTHER INFORMATION ABOUT COSAP, PLEASE CONTACT THE ! LAWRENCE UNIVERSITY COMPUTER CENTER, APPLETON, WISCONSIN, 54911. ! 10 DIM N%(30) ! FUNCTION TO CREATE FILE EXT. BASED ON JOB# 25 DEF FNZ$ : IF N%(0)=30% THEN 40 ELSE CHANGE SYS(CHR$(6)+CHR$(9)+CHR$(0)) TO N% : Z8$=".J"+RIGHT(NUM$(N%(1)/2%),2%) 40 FNZ$=Z8$! EXTENSION IS".J"+JOB # 55 FNEND 70 !****FQS0 85 OPEN "DAT1"+FNZ$ AS FILE 1 100 OPEN "DISC2"+FNZ$ AS FILE 2 115 OPEN "DISC1"+FNZ$ AS FILE 3 130 OPEN "TMP"+FNZ$ AS FILE 4 145 DIM#1,X(200,50),H$(30)=2,C(50,50),M4(0),M5(0),M9(0),N(0),J9(0), I4(0),I7(0),N6(0),X2(50),L1$(8)=32% 160 DIM#2,N2(50),M2(50),T9(0),L6(0),G9(0),L1(0) 175 DIM#3,R(50,50),X3(50,50),F9(50),S(50) 190 DIM #4%, A(50,50),B(50,50), R2(50,50) 195 DIM R1(10,10) 205 L6=L6(0):S6=T9(0) 210 FOR I=1 TO L6 : FOR J=1 TO L6 : S2=R(I,J) : R(I,J)=A(I,J) 215 A(I,J)=S2 : NEXT J : NEXT I 622 S$= " FQS0 0625":K$=SYS(CHR$(8)+S$):CLOSE1,2,3,4 624 CHAIN "INVE" 625 OPEN"DAT1"+FNZ$ASFILE1:OPEN"DISC2"+FNZ$ASFILE2 627 OPEN"DISC1"+FNZ$ASFILE3:OPEN"TMP"+FNZ$ASFILE4 629 L6=L6(0) : S6=T9(0) 630 PRINT : PRINT "REGRESSION COEFFICIENTS" : FOR J%=1% TO S6 : FOR I%=1% TO L6 : F9(I%)=0% : FOR L%=1% TO L6 : F9(I%)=F9(I%)+R(I%,L%)*A(L%,J%) : NEXT L% : NEXT I% 640 PRINT :PRINT "FACTOR "J% : PRINT USING "#####.####", F9(I%); FOR I%=1% TO L6 : PRINT 650 A(I%,J%)=F9(I%) FOR I%=1% TO L6 : NEXT J%: F6=N(0)-1 : FOR I%=1% TO L6 : L=N2(I%) : F9(I%)=SQR(C(L,L)/F6) : NEXT I% 660 PRINT : PRINT "FACTOR SCORES" : FOR I%=1% TO N(0%) : FOR J%=1% TO S6 : R(J%,1%)=0 : NEXT J% : FOR J%=1% TO L6 670 L=N2(J%) : S2=(X(I%,L)-X2(L))/F9(J%) : FOR L%=1% TO S6 : R(L%,1%)=R(L%,1%)+A(J%,L%)*S2 : NEXT L% : NEXT J% : PRINT : PRINT "CASE "I% : PRINT USING "#####.####",R(J%,1%); FOR J%=1% TO S6 680 PRINT : NEXT I% 690 CLOSE 1%,2%,3%,4% : S$=" FACO 0970" : K$=SYS(CHR$(8%)+S$) 700 CHAIN "FACO" 970 32767 END