# Category : Miscellaneous Language Source Code

Archive : FORTRN77.ZIP

Filename : TAB2.FOR

&XM,YM,SDX,SDY,NO,FREQ,IOP)

C

C PERFORMS A TWO-WAY CLASSIFICATION FOR TWO VARIABLES IN

C TWO OBSERVATION ARRAYS OF THE FREQUENCY, PERCENT FREQUENCY

C AND OTHER STATISTICS (SJM,MEAN,STANDARD DEVIATION OF EACH

C VARIABLE) OVER GIVEN CLASS INTERVALS.

C

DIMENSION X(1), Y(1), FREQ(1)

DO 20 J = 1,NIX

IJ = (J-1)*LRA

DO 20 I = 1,NIY

IJ = IJ + 1

FREQ(IJ) = 0.0

20 CONTINUE

TNIY = NIY

TNIX = NIX

SINTX = ABS(BUX - BLX)/(TNIX - 2.)

SINTY = ABS(BUY - BLY)/(TNIY - 2.)

TNO = NO

SUMX = 0.0

SUMY = 0.0

SSX = 0.0

SSY = 0.0

DO 10 I = 1,NO

SUMX = SUMX + X(I)

SUMY = SUMY + Y(I)

SSX = SSX + X(I)**2

SSY = SSY + Y(I)**2

10 CONTINUE

XM = SUMX/TNO

YM = SUMY/TNO

SDY = SQRT((SSY-SUMY**2/TNO)/(TNO - 1.))

SDX = SQRT((SSX - SUMX**2/TNO)/(TNO - 1.))

NIYMI = NIY - 1

NIXMI = NIX - 1

DO 1 K = 1,NO

TESTX = BLX

DO 2 J = 1,NIXMI

TESTY = BLY

IJ = (J-1)*LRA

IF (X(K).LT.TESTX) GO TO 6

GO TO 4

6 DO 3 I = 1,NIYMI

IJ = IJ + 1

IF (Y(K).LT.TESTY) GO TO 5

TESTY = TESTY + SINTY

3 CONTINUE

IJ = (J-1)*LRA + NIY

GO TO 5

4 TESTX = TESTX + SINTX

2 CONTINUE

IJ = NIXMI*LRA

DO 7 I = 1,NIYMI

IJ = IJ + 1

IF (Y(K).LT.TESTY) GO TO 5

TESTY = TESTY + SINTY

7 CONTINUE

IJ = NIXMI*LRA + NIY

5 FREQ(IJ) = FREQ(IJ) + 1.

1 CONTINUE

IF (IOP.EQ.2) GO TO 11

RETURN

11 TNO = NO

TNO = 1./TNO

DO 12 J = 1,NIX

IJ = (J-1)*LRA

DO 12 I = 1,NIY

IJ = IJ + 1

IF (FREQ(IJ).EQ.0.) GO TO 12

FREQ(IJ) = 100.*FREQ(IJ)*TNO

12 CONTINUE

RETURN

END

Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/