home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / DOOG / PCSSP2.ZIP / STATNONP.ZIP / TWOAV.FOR < prev    next >
Text File  |  1985-11-29  |  2KB  |  85 lines

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE TWOAV
  5. C
  6. C        PURPOSE
  7. C           TEST WHETHER A NUMBER OF SAMPLES ARE FROM THE SAME
  8. C           POPULATION BY THE FRIEDMAN TWO-WAY ANALYSIS OF VARIANCE TEST
  9. C
  10. C        USAGE
  11. C           CALL TWOAV(A,R,N,M,W,XR,NDF,NR)
  12. C
  13. C        DESCRIPTION OF PARAMETERS
  14. C           A   - INPUT MATRIX, N BY M, OF ORIGINAL DATA
  15. C           R   - OUTPUT MATRIX, N BY M, OF RANKED DATA
  16. C           N   - NUMBER OF GROUPS
  17. C           M   - NUMBER OF CASES IN EACH GROUP
  18. C           W   - WORK AREA OF LENGTH 2*M
  19. C           XR  - FRIEDMAN STATISTIC (OUTPUT)
  20. C           NDF - NUMBER OF DEGREES OF FREEDOM (OUTPUT)
  21. C           NR  - CODE, 0 FOR UNRANKED DATA IN A, 1 FOR RANKED DATA
  22. C                 IN A (INPUT)
  23. C
  24. C        REMARKS
  25. C           NONE
  26. C
  27. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  28. C           RANK
  29. C
  30. C        METHOD
  31. C           DESCRIBED IN S. SIEGEL, 'NONPARAMETRIC STATISTICS FOR THE
  32. C           BEHAVIORAL SCIENCES', MCGRAW-HILL, NEW YORK, 1956,
  33. C           CHAPTER 7
  34. C
  35. C     ..................................................................
  36. C
  37.       SUBROUTINE TWOAV (A,R,N,M,W,XR,NDF,NR)
  38.       DIMENSION A(1),R(1),W(1)
  39. C
  40. C        DETERMINE WHETHER DATA IS RANKED
  41. C
  42.       IF(NR-1) 10, 30, 10
  43. C
  44. C        RANK DATA IN EACH GROUP AND ASSIGN TIED OBSERVATIONS AVERAGE
  45. C        OF TIED RANK
  46. C
  47.    10 DO 20 I=1,N
  48.       IJ=I-N
  49.       IK=IJ
  50.       DO 15 J=1,M
  51.       IJ=IJ+N
  52.    15 W(J)=A(IJ)
  53.       CALL RANK (W,W(M+1),M)
  54.       DO 20 J=1,M
  55.       IK=IK+N
  56.       IW=M+J
  57.    20 R(IK)=W(IW)
  58.       GO TO 35
  59.    30 NM=N*M
  60.       DO 32 I=1,NM
  61.    32 R(I)=A(I)
  62. C
  63. C        CALCULATE SUM OF SQUARES OF SUMS OF RANKS
  64. C
  65.    35 RTSQ=0.0
  66.       IR=0
  67.       DO 50 J=1,M
  68.       RT=0.0
  69.       DO 40 I=1,N
  70.       IR=IR+1
  71.    40 RT=RT+R(IR)
  72.    50 RTSQ=RTSQ+RT*RT
  73. C
  74. C        CALCULATE FRIEDMAN TEST VALUE, XR
  75. C
  76.       FNM=N*(M+1)
  77.       FM=M
  78.       XR=(12.0/(FM*FNM))*RTSQ-3.0*FNM
  79. C
  80. C        FIND DEGREES OF FREEDOM
  81. C
  82.       NDF=M-1
  83.       RETURN
  84.       END
  85.