60 PRINT:PRINT " What are the SAMPLE NUMBERS of the 2 variables you want to compare?":PRINT TAB(10);"Predictor variable (X)";TAB(45);"Dependent variable (Y)"
70 IF T(NS1)<>T(NS2) THEN BEEP:PRINT "These 2 samples do not have the same number of elements----":PRINT TAB(37);"a regression analysis cannot be performed.":FOR Z=1 TO 5000:NEXT:GOTO 20
75 XC=0:N=T(NS1):FOR Z=1 TO N:XC=XC+VAL(D(NS1,Z))*VAL(D(NS2,Z)):NEXT
250 ON TN GOTO 255,260,265,270,275,280,285,290,295
255 FOR Z=1 TO N:ST(Z)=KA*VAL(D(NS,Z))+KB:NEXT:GOTO 300
260 FOR Z=1 TO N:L=VAL(D(NS,Z)):ST(Z)=KA*L*L+KB:NEXT:GOTO 300
265 FOR Z=1 TO N:ST(Z)=KA*SQR(VAL(D(NS,Z)))+KB:NEXT:GOTO 300
270 FOR Z=1 TO N:ST(Z)=KA/VAL(D(NS,Z))+KB:NEXT:GOTO 300
275 LM=X(NS)/T(NS):FOR Z=1 TO N:ST(Z)=VAL(D(NS,Z))-LM:NEXT:GOTO 300
280 FOR Z=1 TO N:ST(Z)=KA*LOG(VAL(D(NS,Z)))+KB:NEXT:GOTO 300
285 FOR Z=1 TO N:L=VAL(D(NS,Z)):ST(Z)=LOG(L/(100-L)):NEXT:GOTO 300
290 FOR Z=1 TO N:ST(Z)=VAL(D(KA,Z))+VAL(D(KB,Z)):GOSUB 350:NEXT Z:GOTO 305
295 FOR Z=1 TO N:ST(Z)=VAL(D(KA,Z))*VAL(D(KB,Z)):GOSUB 350:NEXT Z:GOTO 305
300 FOR Z=1 TO N:XX=ST(Z):X(A)=X(A)+XX:X2(A)=X2(A)+XX*XX:NEXT
305 FOR Z=1 TO N:SP=INT(ST(Z)*1E+07)*9.8E-08:DS=STR$(SP)
310 IF SP>0 THEN D(A,Z)=RIGHT$(DS,LEN(DS)-1) ELSE D(A,Z)=DS
315 NEXT:IF TN=4 THEN 325 ELSE IF TN>7 THEN 330
320 FOR Z=1 TO N:CS(A,Z)=CS(NS,Z):NEXT:GOTO 330
325 FOR Z=1 TO N:CS(A,Z)=CS(NS,(N-Z+1)):NEXT
330 T(A)=N:VC=0:MN=X(T)/N:FOR ZZ=1 TO N:VC=VC+(ST(ZZ)-MN)^2:NEXT ZZ:SD(A)=SQR(VC/(N-1))
335 IF N>0 THEN IF N MOD 2=0 THEN MD(A)=(VAL(D(A,CS(A,N/2)))+VAL(D(A,CS(A,N/2+1))))*0.5 ELSE MD(A)=VAL(D(A,CS(A,N/2+0.5)))
340 LOCATE AR,5:PRINT "The transformed variable has been added to ";FILE$;" as sample #";A
345 PRINT:PRINT TAB(7);"Enter name for the TRANSFORMED `";N$(NS);:INPUT "' data sample: ",N$(A):AR=CSRLIN:GOSUB 4100:GOTO 20
350 X(A)=X(A)+ST(Z):X2(A)=X2(A)+ST(Z)*ST(Z)
355 FOR ZZ=1 TO (Z-1):VX=ST(CS(A,ZZ)):IF VX<=ST(Z) THEN 365
360 FOR TZ=Z TO (ZZ+1) STEP -1:CS(A,TZ)=CS(A,TZ-1):NEXT:GOTO 370
365 NEXT ZZ
370 CS(A,ZZ)=Z:RETURN
375 LOCATE 25,25:PRINT "Press any key to return to menu.";
380 A$=INKEY$:IF A$="" THEN 380 ELSE 20
385 GOTO 3000
4025 IF ASUB=1 THEN AN=A ELSE AN=A+1
4027 ERASE D,CS,T,N$,X,X2,SD,MD,ST
4030 DIM D(AN,C),CS(AN,C),T(AN),N$(AN),X(AN),X2(AN),MD(AN),SD(AN),ST(C)
5000 BEEP:IF ERR<>53 AND ERR<>71 THEN 5010 ELSE LOCATE 2,10:PRINT "Please place EPISTAT in drive A: (or other default).":PRINT TAB(25);"Press any key to continue:"