Regression

Date: 198x
Type: Program
Platform(s): TS 1000

Matrix math operations.

Content

Appears On

Related Products

Related Articles

Related Content

Image Gallery

Regression

Source Code

1000 CLS 
\n1010 PRINT "NUMBER OF OBSERVATIONS=";
\n1020 INPUT NOB
\n1030 PRINT NOB
\n1040 PRINT "NO. INDEP. VARIABLES  =";
\n1050 INPUT NV
\n1060 PRINT NV
\n1070 PRINT 
\n1080 DIM X(NOB,NV+1)
\n1085 DIM Y(NOB,1)
\n1090 FOR I=1 TO NOB
\n1095 LET X(I,1)=1
\n1097 CLS 
\n1100 PRINT ,,"OBSERVATION ",I,,,
\n1102 PRINT "  DEP. VAR. = ",
\n1103 INPUT Y(I,1)
\n1104 PRINT Y(I,1)
\n1105 FOR J=2 TO NV+1
\n1110 PRINT "      VAR ";J;" = ",
\n1120 INPUT X(I,J)
\n1130 PRINT X(I,J)
\n1140 NEXT J
\n1150 PRINT 
\n1160 PRINT "CORRECT?"
\n1170 INPUT A$
\n1180 IF A$(1)<>"Y" THEN GOTO 1097
\n1190 NEXT I
\n1200 REM %T%R%A%N%S%O%S%E% %X
\n1220 LET ROWA=NV+1
\n1225 LET COLA=NOB
\n1230 DIM A(ROWA,COLA)
\n1240 FOR I=1 TO COLA
\n1250 FOR J=1 TO ROWA
\n1260 LET A(J,I)=X(I,J)
\n1280 NEXT J
\n1290 NEXT I
\n1300 LET ROWB=NOB
\n1310 LET COLB=1
\n1320 DIM B(ROWB,COLB)
\n1330 FOR I=1 TO ROWB
\n1340 LET B(I,1)=Y(I,1)
\n1350 NEXT I
\n1360 GOSUB 7300
\n1370 DIM T(NV+1,1)
\n1380 FOR I=1 TO NV+1
\n1390 LET T(I,1)=C(I,1)
\n1400 NEXT I
\n1410 LET ROWB=NOB
\n1420 LET COLB=NV+1
\n1430 DIM B(ROWB,COLB)
\n1440 FOR I=1 TO ROWB
\n1450 FOR J=1 TO COLB
\n1460 LET B(I,J)=X(I,J)
\n1470 NEXT J
\n1480 NEXT I
\n1490 GOSUB 7300
\n1500 DIM A(NV+1,NV+1)
\n1510 LET ROWA=NV+1
\n1520 LET COLA=NV+1
\n1530 FOR I=1 TO ROWA
\n1540 FOR J=1 TO COLA
\n1550 LET A(I,J)=C(I,J)
\n1560 NEXT J
\n1570 NEXT I
\n1580 LET ROWB=NV+1
\n1590 LET COLB=1
\n1600 DIM B(ROWB,COLB)
\n1610 FOR I=1 TO ROWB
\n1630 LET B(I,1)=T(I,1)
\n1640 NEXT I
\n1650 GOSUB 7500
\n1660 FOR I=1 TO ROWA
\n1670 FOR J=1 TO COLA
\n1680 LET A(I,J)=C(I,J)
\n1690 NEXT J
\n1700 NEXT I
\n1710 GOSUB 7300
\n1800 FOR I=1 TO NV+1
\n1810 PRINT I,C(I,1)
\n1820 NEXT I
\n1830 FOR I=1 TO NOB
\n1832 LET P=0
\n1835 FOR J=1 TO NV+1
\n1840 LET P=P+C(J,1)*X(I,J)
\n1845 NEXT J
\n1850 PRINT Y(I,1),INT (P*100+.5)/100
\n1860 NEXT I
\n1900 STOP 
\n7000 REM %T%H%E% %S%U%B%R%O%U%T%I%N%E%S% %I%N% %T%H%E% %7%0%0%0% %B%L%O%C%K% %O%F% %T%H%I%S% %P%R%O%G%R%A%M% %A%R%E% %T%H%E% %M%A%T%R%I%X% %O%P%E%R%A%T%I%O%N%S%.% %7%1%0%0% %=% %S%C%A%L%A%R% %M%U%L%T%I%P%L%I%C%A%T%I%O%N%,% %7%2%0%0% %=% %M%A%T%R%I%X% %A%D%D%I%T%I%O%N% %A%N%D% %S%U%B%T%R%A%C%T%I%O%N%,% %7%3%0%0% %=% %M%A%T%R%I%X% %M%U%L%T%I%P%L%I%C%A%T%I%O%N%,% %7%4%0%0% %=% %M%A%T%R%I%X% %T%R%A%N%S%P%O%S%I%T%I%O%N%,% %7%5%0%0% %=% %M%A%T%R%I%X% %I%N%V%E%R%S%I%O%N%.
\n7100 REM %S%C%A%L%A%R% %M%U%L%T%I%P%L%I%C%A%T%I%O%N%:%I%N%P%U%T%S%:% %S%C%A%L%A%R%,% %A% %(%M%A%T%R%I%X%)%,% %R%O%W%A%,% %C%O%L%A%.% %O%U%T%P%U%T%:% %C% %(%M%A%T%R%I%X%)% %W%H%E%R%E% %C%=%S%C%A%L%A%R%*%A
\n7110 DIM C(ROWA,COLA)
\n7120 FOR I=1 TO ROWA
\n7130 FOR J=1 TO COLA
\n7140 LET C(I,J)=SCALAR*A(I,J)
\n7150 NEXT J
\n7160 NEXT I
\n7170 RETURN 
\n7200 REM %M%A%T%R%I%X% %A%D%D%I%T%I%O%N% %A%N%D% %S%U%B%T%R%A%C%T%I%O%N%.% %I%N%P%U%T%S%:% %A% %(%M%A%T%R%I%X%)%,% %B% %(%M%A%T%R%I%X%)%,% %R%O%W%A%,% %C%O%L%A%,% %S%I%G%N% %(%+%1% %F%O%R% %A%D%D%,% %-%1% %F%O%R% %S%U%B%T%.%)%.% %O%U%T%P%U%T%S%:% %C% %(%M%A%T%R%I%X%)% %W%H%E%R%E% %C%=%A%+% %O%R% %-%B%.
\n7210 DIM C(ROWA,COLA)
\n7220 FOR I=1 TO ROWA
\n7230 FOR J=1 TO COLA
\n7240 LET C(I,J)=A(I,J)+SIGN*B(I,J)
\n7250 NEXT J
\n7260 NEXT I
\n7270 RETURN 
\n7300 REM %M%A%T%R%I%X% %M%U%L%T%I%P%L%I%C%A%T%I%O%N%.% %I%N%P%U%T%S% %A% %(%M%A%T%R%I%X%)%,% %B% %(%M%A%T%R%I%X%)%,% %R%O%W%A%,% %C%O%L%A%,% %C%O%L%B%.% %O%U%T%P%U%T%S%:% %C% %(%M%A%T%R%I%X%)% %W%H%E%R%E% %C%=%A%*%B%.
\n7310 DIM C(ROWA,COLB)
\n7320 FOR I=1 TO ROWA
\n7330 FOR J=1 TO COLB
\n7340 FOR K=1 TO COLA
\n7350 LET C(I,J)=C(I,J)+A(I,K)*B(K,J)
\n7360 NEXT K
\n7370 NEXT J
\n7380 NEXT I
\n7390 RETURN 
\n7400 REM %M%A%T%R%I%X% %T%R%A%N%S%P%O%S%I%T%I%O%N%.% %I%N%P%U%T%S%:% %A% %(%M%A%T%R%I%X%)%,% %R%O%W%A%,% %C%O%L%A%.% %O%U%T%P%U%T%S%:% %C% %(%M%A%T%R%I%X%)% %W%H%E%R%E% %C%=%A%"%.
\n7410 DIM C(ROWA,COLA)
\n7420 FOR I=1 TO ROWA
\n7430 FOR J=1 TO COLA
\n7440 LET C(I,J)=A(J,I)
\n7450 NEXT J
\n7460 NEXT I
\n7470 RETURN 
\n7500 REM %M%A%T%R%I%X% %I%N%V%E%R%S%I%O%N%.% %I%N%P%U%T%S%:% %A% %(%M%A%T%R%I%X%)%,% %R%O%W%A%.% %O%U%T%P%U%T%S%:% %C% %(%M%A%T%R%I%X%)% %W%H%E%R%E% %C%=%A%*%*%-%1%.
\n7502 LET E$=""
\n7505 DIM C(ROWA,ROWA)
\n7510 FOR J=1 TO ROWA
\n7515 LET C(J,J)=1
\n7520 NEXT J
\n7525 FOR J=1 TO ROWA
\n7530 FOR I=J TO ROWA
\n7535 IF A(I,J)<>0 THEN GOTO 7555
\n7540 NEXT I
\n7545 LET E$="SINGULAR MATRIX"
\n7550 RETURN 
\n7555 FOR K=1 TO ROWA
\n7560 LET TEMP=A(J,K)
\n7565 LET A(J,K)=A(I,K)
\n7570 LET A(I,K)=TEMP
\n7575 LET TEMP=C(J,K)
\n7580 LET C(J,K)=C(I,K)
\n7585 LET C(I,K)=TEMP
\n7590 NEXT K
\n7595 LET TEMP=1/A(J,J)
\n7600 FOR K=1 TO ROWA
\n7605 LET A(J,K)=TEMP*A(J,K)
\n7610 LET C(J,K)=TEMP*C(J,K)
\n7615 NEXT K
\n7620 FOR L=1 TO ROWA
\n7625 IF L=J THEN GOTO 7655
\n7630 LET TEMP=-A(L,J)
\n7635 FOR K=1 TO ROWA
\n7640 LET A(L,K)=A(L,K)+TEMP*A(J,K)
\n7645 LET C(L,K)=C(L,K)+TEMP*C(J,K)
\n7650 NEXT K
\n7655 NEXT L
\n7660 NEXT J
\n7665 RETURN 
\n8000 SAVE "REGRESSIO%N"
\n8010 STOP 
\n9000 REM %D%E%L%E%T%E%S% %L%I%N%E%S% %O%F% %P%R%O%G
\n9005 CLS 
\n9007 PRINT "FIRST LINE TO BE DELETED=";
\n9010 INPUT FIRSTLINE
\n9012 PRINT FIRSTLINE
\n9015 PRINT "LAST  LINE TO BE DELETED=";
\n9020 INPUT LASTLINE
\n9022 PRINT LASTLINE
\n9030 PRINT 
\n9032 PRINT "CORRECT?"
\n9034 INPUT Z$
\n9036 IF Z$(1)<>"Y" THEN GOTO 9000
\n9040 LET PROGBYTE=16509
\n9045 LET DFILE=PEEK 16396+256*PEEK 16397
\n9050 IF (256*PEEK PROGBYTE+PEEK (PROGBYTE+1))=FIRSTLINE THEN GOTO 9080
\n9060 LET PROGBYTE=PROGBYTE+4+PEEK (PROGBYTE+2)+256*PEEK (PROGBYTE+3)
\n9065 IF PROGBYTE>=DFILE THEN GOTO 9200
\n9070 GOTO 9050
\n9080 LET FIRSTLINE=PROGBYTE
\n9090 IF (256*PEEK PROGBYTE+PEEK (PROGBYTE+1))>LASTLINE THEN GOTO 9120
\n9100 LET PROGBYTE=PROGBYTE+4+PEEK (PROGBYTE+2)+256*PEEK (PROGBYTE+3)
\n9105 IF PROGBYTE>=DFILE THEN GOTO 9115
\n9110 GOTO 9090
\n9115 LET PROGBYTE=DFILE
\n9120 LET LASTLINE=PROGBYTE
\n9130 POKE (FIRSTLINE+2),(LASTLINE-FIRSTLINE-4)-256*INT ((LASTLINE-FIRSTLINE-4)/256)
\n9140 POKE (FIRSTLINE+3),INT ((LASTLINE-FIRSTLINE-4)/256)
\n9150 STOP 
\n9200 PRINT "ERROR: FIRST LINE ";FIRSTLINE;" NOT FOUND."
\n9210 STOP

People

No people associated with this content.

Scroll to Top