home *** CD-ROM | disk | FTP | other *** search
- stchis(llc,m,n,x,chi2,idf,r)
-
- /*this subroutine computes any number of m by n contingency tables.*/
-
- float x[],*chi2,r[];
- int llc,m,n,*idf;
-
- {
-
- float sum,c,e,xx,xxme;
- int i,ij,j,kllc;
-
- sum = 0.0;
- kllc = 0;
- for (i = 0; i <= m-1; i++)
- {
- r[i] = 0.0;
-
- for (j = 0; j <= n-1; j++)
- {
- ij = j + kllc;
- sum = sum + x[ij];
- r[i] = r[i] + x[ij];
- }
- kllc = kllc + llc;
- }
-
- *chi2 = 0.0;
-
- for (j = 0; j <= n-1; j++)
- {
- c = 0.0;
- ij = j;
-
- for (i = 0; i <= m-1; i++)
- {
- c = c + x[ij];
- ij = ij + llc;
- }
-
- ij = j;
- for (i = 0; i <= m-1; i++)
- {
- xx = x[ij];
- ij = ij + llc;
- e = r[i] * c/sum;
- xxme = xx - e;
- *chi2 = *chi2 + xxme * xxme/e;
- }
- }
-
- *idf = (m-1)*(n-1);
-
- }