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

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE QTEST
  5. C
  6. C        PURPOSE
  7. C           TEST WHETHER THREE OR MORE MATCHED GROUPS OF DICHOTOMOUS
  8. C           DATA DIFFER SIGNIFICANTLY BY THE COCHRAN Q-TEST
  9. C
  10. C        USAGE
  11. C           CALL QTEST(A,N,M,Q,NDF)
  12. C
  13. C        DESCRIPTION OF PARAMETERS
  14. C           A   - INPUT MATRIX, N BY M, OF DICHOTOMOUS DATA (0 AND 1)
  15. C           N   - NUMBER OF SETS IN EACH GROUP
  16. C           M   - NUMBER OF GROUPS
  17. C           Q   - COCHRAN Q STATISTIC (OUTPUT)
  18. C           NDF - NUMBER OF DEGREES OF FREEDOM (OUTPUT)
  19. C
  20. C        REMARKS
  21. C           M MUST BE THREE OR GREATER
  22. C
  23. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  24. C           NONE
  25. C
  26. C        METHOD
  27. C           DESCRIBED IN S. SIEGEL, 'NONPARAMETRIC STATISTICS FOR THE
  28. C           BEHAVIORAL SCIENCES', MCGRAW-HILL, NEW YORK, 1956,
  29. C           CHAPTER 7
  30. C
  31. C     ..................................................................
  32. C
  33.       SUBROUTINE QTEST(A,N,M,Q,NDF)
  34.       DIMENSION A(1)
  35. C
  36. C        COMPUTE SUM OF SQUARES OF ROW TOTALS, RSQ, AND GRAND TOTAL OF
  37. C        ALL ELEMENTS, GD
  38. C
  39.       RSQ=0.0
  40.       GD=0.0
  41.       DO 20 I=1,N
  42.       TR=0.0
  43.       IJ=I-N
  44.       DO 10 J=1,M
  45.       IJ=IJ+N
  46.    10 TR=TR+A(IJ)
  47.       GD=GD+TR
  48.    20 RSQ=RSQ+TR*TR
  49. C
  50. C        COMPUTE SUM OF SQUARES OF COLUMN TOTALS, CSQ
  51. C
  52.       CSQ=0.0
  53.       IJ=0
  54.       DO 40 J=1,M
  55.       TC=0.0
  56.       DO 30 I=1,N
  57.       IJ=IJ+1
  58.    30 TC=TC+A(IJ)
  59.    40 CSQ=CSQ+TC*TC
  60. C
  61. C        COMPUTE COCHRAN Q TEST VALUE
  62. C
  63.       FM=M
  64.       Q=(FM-1.0)*(FM*CSQ-GD*GD)/(FM*GD-RSQ)
  65. C
  66. C        FIND DEGREES OF FREEDOM
  67. C
  68.       NDF=M-1
  69.       RETURN
  70.       END
  71.