home *** CD-ROM | disk | FTP | other *** search
/ Atari Interface 1992 March / Atari_Interface_March_1992_side_A.atr / ttest.arc / TTEST.BAS next >
BASIC Source File  |  1988-09-01  |  8KB  |  1 lines

  1. 100 REM . TTEST FOR DEPENDENT SAMPLES¢110 REM .       BY MICHAEL DALTO¢120 REM ¢130 REM *****INITIALIZATION SECTION*****¢140 DIM W(31):DIM K(31):DIM TABLE(30,4)¢150 REM .    W = THE FIRST COMPONENT OF PAIRED MEASUREMENT¢160 REM .    K = THE SECOND COMPONENT OF PAIRED MEASUREMENT¢170 REM .    TABLE = STORED STUDENT t-DISTRIBUTION¢180 DIM A$(1):DIM B$(1):DIM ID$(100):DIM C$(25):DIM D$(25):DIM E$(25):DIM P$(3)¢190 DIM LN$(40):DIM Q(15):DIM FILENAME$(20):DIM WW$(20):DIM KK$(20)¢200 REM . A$ AND B$ = CONDITIONAL STATEMENTS CONCERNING PROGRAM OPERATION¢210 REM . ID$ = DATA IDENTIFICATION¢220 REM . C$,D$,E$ AND P$ = OUTPUT STATEMENTS¢230 REM . LN$, Q$, FILENAME$, WW$ AND KK$ = FOR FILE HANDLING SUBROUTINES¢240 REM *****ENTER STUDENT T-DISTRIBUTION*****¢250 FOR ROW=1 TO 30¢260 FOR COL=1 TO 4¢270 READ TABLE¢280 LET TABLE(ROW,COL)=TABLE¢290 NEXT COL:NEXT ROW¢300 REM .  10%    5%    2%     1%¢310 REM .  ___    __    __     __¢320 DATA 6.314,12.706,31.821,63.657¢330 DATA 2.920,4.303,6.965,9.925¢340 DATA 2.353,3.182,4.541,5.841¢350 DATA 2.132,2.776,3.747,4.604¢360 DATA 2.015,2.571,3.365,4.032¢370 DATA 1.943,2.447,3.143,3.707¢380 DATA 1.895,2.365,2.998,3.499¢390 DATA 1.860,2.306,2.896,3.355¢400 DATA 1.833,2.262,2.821,3.250¢410 DATA 1.812,2.228,2.764,3.169¢420 DATA 1.796,2.201,2.718,3.106¢430 DATA 1.782,2.179,2.681,3.055¢440 DATA 1.771,2.160,2.650,3.012¢450 DATA 1.761,2.145,2.624,2.977¢460 DATA 1.753,2.131,2.602,2.947¢470 DATA 1.746,2.120,2.583,2.921¢480 DATA 1.740,2.110,2.567,2.898¢490 DATA 1.734,2.101,2.552,2.878¢500 DATA 1.729,2.093,2.539,2.861¢510 DATA 1.725,2.086,2.528,2.845¢520 DATA 1.721,2.080,2.518,2.831¢530 DATA 1.717,2.074,2.508,2.819¢540 DATA 1.714,2.069,2.500,2.807¢550 DATA 1.711,2.064,2.492,2.797¢560 DATA 1.708,2.060,2.485,2.787¢570 DATA 1.706,2.056,2.479,2.779¢580 DATA 1.703,2.052,2.473,2.771¢590 DATA 1.701,2.048,2.467,2.763¢600 DATA 1.699,2.045,2.462,2.756¢610 DATA 1.697,2.042,2.457,2.750¢620 TRAP 32767:TRAP 630¢630 ? "}":POSITION 5,2¢640 ? "╨╥╧┬┴┬╔╠╔╘┘á╙┼╠┼├╘╔╧╬á═┼╬╒"¢650 ? " CHOOSE CONFIDENCE LEVEL"¢660 ? "             1 = 10%"¢670 ? "             2 =  5%"¢680 ? "             3 =  2%"¢690 ? :? "        PROBABILITY NO. = ";:INPUT COL¢700 IF COL<1 OR COL>4 THEN 630¢710 LET A$="N":REM . SET NORMAL OPERATION MODE OF THE DATA ANALYSIS OUTPUT¢720 GOTO 1610¢730 REM *****DATA ENTRY *****¢740 ? "}":POSITION 7,2¢750 ? "ENTER DATA IDENTIFICATION"¢760 ? :? "     ";ID$:INPUT ID$:? :? ¢770 TRAP 32767:TRAP 740¢780 ? "HOW MANY PAIRED MEASUREMENTS ARE"¢790 ? "GOING TO BE ENTERED";:INPUT A¢800 IF A<2 OR A>30 THEN PRINT :? "*  ENTER AT LEAST 2 MEASUREMENTS  *":? :GOTO 780¢810 FOR I=1 TO A:? ¢820 IF I>A THEN ? "}":? "  TURN PRINTER ON AND RUN PROGRAM":POKE 752,0:END ¢830 ? "PAIRED MEASUREMENT NO. ";I¢840 TRAP 32767:TRAP 820¢850 ? "         X-VALUE = ";¢860 INPUT W:LET W(I)=W:REM . THE FIRST MEASUREMENT OF THE PAIR¢870 ? "         Y-VALUE = ";¢880 INPUT K:LET K(I)=K:REM .  THE SECOND MEASUREMENT OF THE PAIR¢890 NEXT I¢900 REM *****DATA ENTRY CORRECTION *****¢910 ? :? "DO YOU WISH TO MAKE ANY CORRECTIONS,"¢920 ? "(Y OR N)";:INPUT B$¢930 IF B$="N" THEN 1050¢940 ? :? "  * SELECT NON-NUMERIC CHARACTER *"¢950 ? "  * TO ABORT DATA ENTRY          *"¢960 TRAP 32767:TRAP 1610¢970 ? :? "WHICH NUMBER PAIR MEASUREMENT"¢980 ? "IS TO BE CORRECTED";:INPUT I¢990 ? :? "THE X VALUE = ";¢1000 INPUT W1:LET W(I)=W1¢1010 ? "THE Y VALUE = ";¢1020 INPUT K1:LET K(I)=K1¢1030 ? :GOTO 910¢1040 REM *****COMPUTATION SECTION*****¢1050 LET S3=0:S4=0:REM .   INITIALIZE SUMS¢1060 ? "}"¢1070 POSITION 15,10:POKE 752,1:? "WORKING"¢1080 FOR I=1 TO A¢1090 LET D1=W(I)-K(I):REM .        D1= THE DIFFERENCE BETWEEN THE 2 MEASUREMENTS¢1100 LET D2=D1^2:REM .             D2= THE DIFFERENCE SQUARED¢1110 LET S3=D1+S3:REM .            S3= SUM OF THE DIFFERENCES¢1120 LET S4=D2+S4:REM .            S4= SUM OF THE SQUARE OF THE DIFFERENCES¢1130 NEXT I¢1140 LET MD=S3/A:REM .             MD= MEAN OF THE DIFFERENCES¢1150 SD=SQR((S4/(A-1))-(S3^2/(A*(A-1)))):REM .     SD=STANDARD DEVIATION¢1160 LET SE=SD/SQR(A):REM .        SE=STANDARD ERROR (VARIANCE OF THE MEAN DIFFERENCE)¢1170 IF SE<>0 THEN 1220¢1180 ? "}":? "  *    STANDARD ERROR = 0      *"¢1190 ? "  *    TEST VALUE CAN'T BE     *"¢1200 ? "  * CALCULATED FOR COMPARISON  *"¢1210 GOTO 1620¢1220 LET TESTV=ABS(MD)/SE:REM .    TESTV=TEST VALUE¢1230 REM *****COMPARE TEST VALUE AGAINST T-DISTRIBUTION*****¢1240 LET ROW=A-1:REM .              ROW= DEGREES OF FREEDOM¢1250 IF TESTV>TABLE(ROW,COL) THEN C$="REJECTED":D$="LARGER THAN":E$="EXISTS"¢1260 IF TESTV=TABLE(ROW,COL) THEN C$="ACCEPTED":D$="EQUAL TO":E$="DOES NOT EXIST"¢1270 IF TESTV<TABLE(ROW,COL) THEN C$="ACCEPTED":D$="SMALLER THAN":E$="DOES NOT EXIST"¢1280 REM *****OUTPUT SECTION****¢1290 OPEN #4,8,0,"P:"¢1300 IF COL=1 THEN P$="10%"¢1310 IF COL=2 THEN P$="5%"¢1320 IF COL=3 THEN P$="2%"¢1330 IF COL=4 THEN P$="5%"¢1340 PRINT #4;"     ";ID$¢1350 PRINT #4;"    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "¢1360 PRINT #4:PRINT #4¢1370 PRINT #4,,,"PAIRED MEASUREMENTS"¢1380 PRINT #4,:FOR I=1 TO A:PRINT #4¢1390 PRINT #4,,"MEASUREMENT NO.  ";I¢1400 PRINT #4,"X-VALUE = ";W(I),,"Y-VALUE = ";K(I)¢1410 NEXT I¢1420 PRINT #4:PRINT #4¢1430 IF A$="N" THEN 1510¢1440 PRINT #4,,," DATA ANALYSIS"¢1450 PRINT #4¢1460 PRINT #4;"        1.  SUM OF THE DIFFERENCES = ";INT(1000*S3+0.5)/1000¢1470 PRINT #4;"        2.  SUM OF THE SQUARE OF THE DIFFERENCES = ";INT(1000*S4+0.5)/1000¢1480 PRINT #4;"        3.  MEAN OF THE DIFFERENCES = ";INT(1000*MD+0.5)/1000¢1490 PRINT #4;"        4.  STANDARD DEVIATION = ";INT(1000*SD+0.5)/1000¢1500 PRINT #4;"        5.  STANDARD ERROR (VARIANCE OF MEAN VALUE OF DIFFERENCES) = ";INT(1000*SE+0.5)/1000¢1510 PRINT #4:PRINT #4¢1520 PRINT #4;"        THE NULL HYPOTHESIS (X-Y = 0) IS TO BE TESTED AGAINST THE"¢1530 PRINT #4;"        ALTERNATIVE (X-Y <> 0) AT A PROBABILITY OF ";P$¢1540 PRINT #4¢1550 PRINT #4;"        FOR ";ROW;" DEGREES OF FREEDOM THE TEST VALUE OF, ";INT(1000*TESTV+0.5)/1000¢1560 PRINT #4;"        IS ";D$;" THE TABLE VALUE OF, ";TABLE(ROW,COL)¢1570 PRINT #4;"        THE NULL HYPOTHESIS IS ";C$¢1580 PRINT #4¢1590 PRINT #4;"        A DIFFERENCE ";E$;" BETWEEN THE PAIRS OF MEASUREMENTS."¢1600 CLOSE #4¢1610 ? "}":? :? ¢1620 POKE 752,0:? :? "       áááááááá═┼╬╒áááááááá":? ¢1630 ? "        ┴NALYSIS OF DATA"¢1640 ? "        ┼ND PROGRAM"¢1650 ? "        ╨ROBABILITY RESET"¢1660 ? "        ╥ECALL DATA"¢1670 ? "        ╙TORE DATA"¢1680 ? "        ╥┼╘╒╥╬ TO CONTINUE"¢1690 ? :? "ENTER SELECTION";:INPUT B$¢1700 IF B$="A" AND A$="N" THEN A$="Y":GOTO 1610¢1710 IF B$="A" AND A$="Y" THEN A$="Y":GOTO 1610¢1720 IF B$="E" THEN PRINT "}":END ¢1730 IF B$="P" THEN 620¢1740 IF B$="R" THEN 1780¢1750 IF B$="S" THEN 1930¢1760 GOTO 740¢1770 REM *****FILE RETRIEVAL*****¢1780 GOSUB 2080¢1790 CLOSE #1:OPEN #1,4,0,FILENAME$¢1800 GET #1,COL¢1810 GET #1,AA:LET A$=CHR$(AA)¢1820 GET #1,LEN¢1830 IF LEN=0 THEN GET #1,ID:LET ID$=CHR$(ID):GOTO 1850¢1840 FOR I=1 TO LEN:GET #1,ID:LET ID$(I)=CHR$(ID):NEXT I¢1850 GET #1,A¢1860 FOR I=1 TO A¢1870 GET #1,LENWW:FOR J=1 TO LENWW:GET #1,WW:LET WW$(J)=CHR$(WW):NEXT J¢1880 GET #1,LENKK:FOR J=1 TO LENKK:GET #1,KK:LET KK$(J)=CHR$(KK):NEXT J¢1890 LET W(I)=VAL(WW$):LET K(I)=VAL(KK$)¢1900 NEXT I¢1910 CLOSE #1:GO TO 1050¢1920 REM *****FILE STORAGE*****¢1930 GOSUB 2080¢1940 CLOSE #1:OPEN #1,8,0,FILENAME$¢1950 PUT #1,COL¢1960 PUT #1,ASC(A$)¢1970 PUT #1,LEN(ID$)¢1980 IF LEN(ID$)=0 THEN PUT #1,ASC(" "):GOTO 2000¢1990 FOR I=1 TO LEN(ID$):PUT #1,ASC(ID$(I)):NEXT I¢2000 PUT #1,A¢2010 FOR I=1 TO A¢2020 LET WW$=STR$(W(I)):LET KK$=STR$(K(I))¢2030 PUT #1,LEN(WW$):FOR J=1 TO LEN(WW$):PUT #1,ASC(WW$(J)):NEXT J¢2040 PUT #1,LEN(KK$):FOR J=1 TO LEN(KK$):PUT #1,ASC(KK$(J)):NEXT J¢2050 NEXT I¢2060 CLOSE #1:GO TO 1610¢2070 REM *****FILE DIRECTORY*****¢2080 LET Q=1¢2090 CLOSE #1:OPEN #1,6,0,"D:*.*"¢2100 TRAP 32767:TRAP 2140¢2110 FOR I=Q TO Q+11:INPUT #1,LN$:? LN$(1,13);:INPUT #1,LN$:? ,LN$(1,13):NEXT I¢2120 ? :? "CONTINUE DISPLAY (Y OR N)";:INPUT B$¢2130 IF B$="Y" THEN Q=Q+11:GO TO 2110¢2140 ? :? "***DIRECTORY FINISHED***"¢2150 CLOSE #1¢2160 ? :? "MODIFY FILE NAME, CLOSE QUOTES"¢2170 ? "TYPE ├╧╬╘ TO PROCEED"¢2180 ? "TYPE ╥╒╬ TO ESCAPE DIRECTORY & RESET PROGRAM":? ¢2190 LIST 2200:END ¢2200 FILENAME$="D1:L"¢2210 RETURN ¢