Listing of file='DISREG.BAS;01' on disk='vmedia/statistics_2-sector.ccvf'
5 REM DISREG 6 REM FREQUENCY DISTRIBUTION REGRESSION 7 REM WRITTEN BY WALTER DEGLER 4/5/79 20 DIM N(39),X(200),F(200) 22 DIM D(73,5),PC$(4,1) 25 PLOT 12,14,27,24,6,2 30 INPUT "IS DATA TO BE ENTERED? ";Z$ 50 IF LEFT$ (Z$,1)= "Y"THEN GOSUB 2000 75 DATA ".75",".25",".90",".10",".95",".05",".975",".025",".99",".01" 80 DATA "GOOD","BAD","REASONABLE","TOO GOOD" 100 FOR I= 0TO 4:FOR J= 0TO 1 125 READ PC$(I,J) 150 NEXT J,I 175 READ A$,B$,C$,D$ 1000 REM SELECT FREQUENCY DISTRIBUTION 1010 PLOT 12,14,6,2 1025 PRINT "SELECT NUMBER OF DESIRED CHOICE:" 1050 PRINT "1 - BINOMIAL DISTRIBUTION" 1075 PRINT "2 - NORMAL DISTRIBUTION" 1100 PRINT "3 - POISSON DISTRIBUTION" 1125 PRINT "4 - DISPLAY T-DISTRIBUTION TABLE" 1150 PRINT "5 - DISPLAY CHI-SQUARE TABLE" 1175 PRINT "6 - DISPLAY NORMAL DISTRIBUTION TABLE" 1200 PRINT "7 - CHI-SQUARE TEST FOR LAST DISTRIBUTION" 1210 PRINT "8 - END PROGRAM" 1225 INPUT Z 1230 PLOT 15 1250 ON ZGOSUB 4000,5000,6000,11000,12000,13000,14000,1500 1275 GOTO 1000 1500 LOAD "MENU":RUN 1999 REM 2000 REM INPUT DATA 2025 INPUT "DATA SOURCE (F-FILE OR K-KEYBOARD): ";Z$ 2030 INPUT "ARE CLASS MARKS SUCCESSIVE INTEGERS FROM 0 UP? ";Y$ 2040 Y$= LEFT$ (Y$,1) 2050 IF Z$= "F"THEN 2500 2075 INPUT "NUMBER OF CLASSES: ";NO 2100 PLOT 12,15,27,11,6,1 2110 IF Y$= "Y"THEN PRINT "ENTER FREQUENCIES IN INCREASING CLASS MARK ORDER:":GOTO 2150 2125 PRINT "ENTER CLASS MARK AND FREQUENCY OF EACH CLASS:" 2150 PLOT 6,3 2175 INPUT "#";I 2200 IF I< 1THEN PLOT 27,24,6,2:GOTO 3000 2225 PRINT SPC( 6);:PLOT 28 2230 IF Y$= "Y"THEN X(I- 1)= I- 1:PRINT I- 1:GOTO 2275 2250 INPUT "";X(I- 1) 2275 PRINT SPC( 12);:PLOT 28 2300 INPUT "";F(I- 1) 2325 GOTO 2175 2500 PRINT :PLOT 6,1 2510 IF Y$= "Y"THEN INPUT "FILE NAME, FREQUENCY TYPE #: ";F$,T2:GOTO 2550 2525 INPUT "FILE NAME, DATA TYPE #, FREQUENCY TYPE #: ";F$,T1,T2 2550 PRINT :PLOT 6,2 2575 FILE "R",1,F$,4 2600 GET 1,T2,5;NO 2625 FOR I= 0TO NO- 1 2630 IF Y$= "Y"THEN X(I)= I:GOTO 2675 2650 GET 1,T1,9+ 4* I;X(I) 2675 GET 1,T2,9+ 4* I;F(I) 2700 NEXT 2725 FILE "C",1 2999 REM 3000 REM COMPUTE SUMS 3025 FOR I= 0TO NO- 1 3050 F= F+ F(I) 3075 T= F(I)* X(I) 3100 FX= FX+ T 3125 FS= FS+ T* X(I) 3150 NEXT 3175 M= FX/ F 3200 V= (F* FS- FX* FX)/ (F* (F- 1)) 3225 SD= SQR (ABS (V)) 3250 W= ABS (.5* (X(1)- X(0))) 3275 RETURN 3999 REM 4000 REM BINOMIAL DISTRIBUTION 4025 FC= M/ (NO- 1- M) 4050 P(0)= ((NO- 1- M)/ (NO- 1))^ (NO- 1) 4075 FOR I= 1TO NO- 1 4100 P(I)= P(I- 1)* (NO- I)* FC/ I 4125 NEXT 4200 PLOT 12 4500 PRINT SPC( 21);"BINOMIAL DISTRIBUTION" 4525 PLOT 15,6,1 4550 PRINT 4575 PRINT "COUNT PROB. OF COUNT EXPECTED FREQ. OBSERVED FREQ." 4580 PLOT 6,3 4590 PRINT 4600 FOR I= 0TO NO- 1 4625 PRINT " ";X(I);TAB( 11);P(I);TAB( 30);F* P(I);TAB( 49);F(I) 4650 NEXT 4675 DF= NO- 2 4700 GOTO 10000 4999 REM 5000 REM NORMAL DISTRIBUTION 5025 IF NF= 1THEN 5200 5050 FILE "R",1,"NORMAL",10 5075 FOR I= 0TO 39 5100 GET 1,1,9+ 4* I;N(I) 5125 NEXT 5150 FILE "C",1 5175 NF= 1 5200 FOR I= 0TO NO- 1 5225 Z1= 10* (X(I)- W- SD)/ M 5250 X= ABS (Z1) 5275 GOSUB 9000 5300 U= SGN (Z1)* Y 5325 Z2= 10* (X(I)+ W- SD)/ M 5350 X= ABS (Z2) 5375 GOSUB 9000 5400 P(I)= ABS (U- SGN (Z2)* Y) 5425 NEXT 5450 PLOT 12 5500 PRINT SPC( 22);"NORMAL DISTRIBUTION" 5525 PLOT 15,6,1 5530 PRINT 5550 PRINT " MARK AREA FOR CLASS EXPECTED FREQ. OBSERVED FREQ." 5575 DF= NO- 3 5600 GOTO 4580 5999 REM 6000 REM POISSON DISTRIBUTION 6025 P(0)= EXP (- M) 6050 FOR I= 1TO NO- 1 6075 P(I)= P(I- 1)* M/ I 6100 NEXT 6150 PLOT 12 6500 PRINT SPC( 22);"POISSON DISTRIBUTION" 6525 DF= NO- 2 6550 GOTO 4525 8999 REM 9000 REM AREA UNDER NORMAL CURVE FROM 0 TO X ( X>=0 ) 9025 FOR K= 0TO 39 9050 IF K< XTHEN 9125 9075 Y= (X- K- 1)* (N(K)- N(K- 1))+ N(K- 1) 9100 RETURN 9125 NEXT 9150 Y= .5 9175 RETURN 9999 REM 10000 REM HOW TO CONTINUE ROUTINE 10025 PLOT 6,1,3,0,31 10050 INPUT "ENTER 1 TO RETURN OR 2 TO SAVE, THEN RETURN: ";Z 10075 IF Z< > 2THEN RETURN 10100 PLOT 27,4:PRINT "SAV DISREG.DSP 6000-6FFF":PLOT 27,27 10125 RETURN 10999 REM 11000 REM DISPLAY STUDENT'S T-DISTRIBUTION 11010 IF T0= 1THEN 11180 11025 FILE "R",1,"T",6 11050 FOR I= 0TO 5 11075 FOR J= 0TO 33 11100 GET 1,I+ 1,9+ 4* J;D(J,I) 11125 NEXT J,I 11150 FILE "C",1 11175 T0= 1 11180 PLOT 12 11190 PLOT 6,1 11200 INPUT "BEGINNING 'DF' NUMBER (OR '0' TO RETURN): ";B 11210 IF Z> 120THEN B= B+ 1 11212 Z= B 11214 IF Z> = 30THEN B= 30 11216 IF Z> = 40THEN B= B+ 1 11218 IF Z> = 60THEN B= B+ 1 11220 IF Z> = 120THEN B= B+ 1 11225 E= B+ 23:IF E> 33THEN E= 33 11250 PLOT 12,6,2 11275 PRINT SPC( 20);"STUDENT'S T-DISTRIBUTION" 11300 PRINT SPC( 22);"(PERCENTILE VALUES)" 11325 PRINT 11330 PLOT 6,1 11350 PRINT " DF .995 .990 .975 .950 .900 .800" 11375 PRINT 11380 PLOT 6,3 11400 FOR I= B- 1TO E 11425 IF I< 30THEN X$= STR$ (I+ 1):GOTO 11550 11450 IF I= 30THEN X$= " 40" 11475 IF I= 31THEN X$= " 60" 11500 IF I= 32THEN X$= "120" 11525 IF I= 33THEN X$= " -" 11550 PRINT X$; 11575 FOR J= 0TO 5 11600 PRINT TAB( 4+ 10* J);D(I,J); 11625 NEXT J 11650 PRINT "" 11675 NEXT I 11700 PLOT 3,0,31 11725 GOTO 11190 11999 REM 12000 REM DISPLAY CHI-SQUARE DISTRIBUTION 12010 IF C0= 1THEN 12180 12025 FILE "R",1,"CHISQR",6 12050 FOR I= 0TO 5 12075 FOR J= 0TO 73 12100 GET 1,I+ 1,9+ 4* J;D(J,I) 12125 NEXT J,I 12150 FILE "C",1 12175 C0= 1 12180 PLOT 12 12190 PLOT 6,1 12200 INPUT "BEGINNING 'DF' NUMBER (OR '0' TO RETURN): ";B 12210 IF B= 0THEN RETURN 12215 IF B> = 30THEN B= INT (B/ 10)+ 27 12220 IF B> 37THEN B= 37 12225 E= B+ 6:IF E> 36THEN E= 36 12250 PLOT 12,6,2 12275 PRINT SPC( 20);"CHI-SQUARE DISTRIBUTION" 12300 PRINT SPC( 22);"(PERCENTILE VALUES)" 12325 PRINT 12330 PLOT 6,1 12350 PRINT " DF .995 .990 .975 .950 .900 .750" 12375 PRINT " .500 .250 .100 .050 .025 .010" 12410 PLOT 6,3 12425 FOR I= B- 1TO E 12430 PRINT 12450 IF I< 30THEN X= I+ 1:GOTO 12500 12475 X= 10* (I- 26) 12500 PRINT X; 12525 FOR J= 0TO 5 12550 PRINT TAB( 4+ 10* J);D(I+ I,J); 12575 NEXT J 12600 PRINT "" 12625 FOR J= 0TO 5 12650 PRINT TAB( 4+ 10* J);D(2* I+ 1,J); 12675 NEXT J 12700 PRINT "" 12725 NEXT I 12750 PLOT 3,0,31 12775 GOTO 12190 12999 REM 13000 REM DISPLAY NORMAL DISTRIBUTION 13010 IF N0= 1THEN 13180 13025 FILE "R",1,"NORMAL",6 13050 FOR I= 0TO 1 13075 FOR J= 0TO 39 13100 GET 1,I+ 1,9+ 4* J;D(J,I) 13125 NEXT J,I 13150 FILE "C",1 13175 N0= 1 13180 PLOT 12 13190 PLOT 6,1 13200 INPUT "BEGINNING ABSCISSA NUMBER (OR '10' TO RETURN): ";B 13210 IF B= 10THEN RETURN 13215 IF B> 3.9THEN B= 3.9 13220 B= 10* B 13225 E= B+ 23:IF E> 39THEN E= 39 13250 PLOT 12,6,2 13275 PRINT SPC( 22);"STANDARD NORMAL CURVE" 13300 PRINT 13325 PRINT 13330 PLOT 6,1 13350 PRINT " X ORDINATE AT X AREA UNDER CURVE FROM 0 TO X" 13375 PLOT 6,3 13400 FOR I= BTO E 13450 PRINT I/ 10;TAB( 14);D(I,0);TAB( 40);D(I,1) 13475 NEXT I 13500 PLOT 3,0,31 13525 GOTO 13190 13999 REM 14000 REM COMPUTE CHI-SQUARE AND GET VALUES FROM TABLE 14025 CS= 0 14050 FOR I= 0TO NO- 1 14060 X= F* P(I) 14075 CS= CS+ (X- F(I))* (X- F(I))/ X 14100 NEXT 14175 FILE "R",1,"CHISQR",1 14200 IF DF> 30THEN 14350 14225 FOR J= 2TO 6 14250 GET 1,8- J,1+ 8* DF;C1(J- 2) 14275 GET 1,J,5+ 8* DF;C2(J- 2) 14300 NEXT J 14325 GOTO 15000 14350 IF DF< 101THEN 14500 14375 FOR J= 2TO 6 14400 GET 1,8- J,297;C1(J- 2) 14425 GET 1,J,301;C2(J- 2) 14450 NEXT J 14475 GOTO 15000 14500 FOR J= 41TO 91STEP 10 14525 IF DF< JTHEN X1= 4* (J- 1)/ 5+ 209:X2= J- 11:GOTO 14600 14550 NEXT J 14575 X1= 289:X2= 90 14600 FOR J= 2TO 6 14625 GET 1,8- J,X1;C1(J- 2) 14650 GET 1,J,X1+ 4;C2(J- 2) 14675 GET 1,8- J,X1+ 8;C1(J+ 3) 14700 GET 1,J,X1+ 12;C2(J+ 3) 14725 C1(J- 2)= C1(J- 2)+ (DF- X2)* (C1(J+ 3)- C1(J- 2))/ 10 14750 C2(J- 2)= C2(J- 2)+ (DF- X2)* (C2(J+ 3)- C2(J- 2))/ 10 14775 NEXT J 14999 REM 15000 REM CHI-SQUARE TEST 15005 FILE "C",1 15010 PLOT 12,6,2 15020 PRINT "THE COMPUTED VALUE OF CHI-SQUARE IS";CS 15022 PRINT :PLOT 6,6 15125 PRINT "FOR"DF" DEGREES OF FREEDOM:" 15130 PRINT 15135 PLOT 6,1 15140 PRINT TAB( 5)"LEVEL";TAB( 17);"CHI-SQUARE";TAB( 40);"RESULT" 15142 PRINT 15150 FOR I= 0TO 4 15175 X$= A$:IF CS> C1(I)THEN X$= B$ 15200 Y$= C$:IF CS< C2(I)THEN Y$= D$ 15225 IF X$= B$THEN Y$= "" 15230 PLOT 6,2:PRINT TAB( 6);PC$(I,0);TAB( 20); 15235 PLOT 6,3:PRINT C1(I);TAB( 40);X$ 15260 PLOT 6,2:PRINT TAB( 6);PC$(I,1);TAB( 20); 15275 PLOT 6,3:PRINT C2(I);TAB( 40);Y$ 15300 PRINT 15325 NEXT 15350 GOTO 10000