# st: Re: Fisher's exact test in r x c contingency tables

 From Mike Lacy To statalist@hsphsun2.harvard.edu Subject st: Re: Fisher's exact test in r x c contingency tables Date Thu, 02 Jun 2005 10:16:53 -0600

>Date: Thu, 2 Jun 2005 07:25:20 +0200
>From: Marcus Keupp <marcus.keupp@unisg.ch>
>Subject: st: Fisher's exact test in r x c contingency tables

>Dear Listers,

>in my understanding Fisher's exact test (FET) is applicable in
>2x2 contingency tables only. However, Stata help contends
>that "... Fisher's exact test ... may be applied to r x c tables
>as well as to 2x2 tables".

Yes, this is quite legitimate. See:

Mehta, C.R. and Patel, N.R. 1983 "A Network Algorithm For Performing Fisher Exact Test In R X C Contingency-Tables." Journal of the American Statistical Association. 78:427-434.

The p-value from this test refers to the proportion of all possible internal arrangements of the table that 1) satisfy the row and column marginals of the table; and 2) are "more extreme" than the observed arrangement of the table, where "more extreme" is defined by having a smaller hypergeometric probability than the arrangement of the observed table. "More extreme" here is more abstract than in a 2 X 2 table, in which "smaller hypergeometric probability" is identical to "odds ratio farther away from 1.0."

>I have heard of some algorithm in SAS that seems to apply FET
>to r x c tables, but I still wonder whether this is appropriate. Is
> Stata maybe computing something similar?

I don't have the SAS documentation, but almost certainly it is doint he same thing.

>The only difference in output
>is that in 2x2 tables, 1- and 2-sided p values are computed, whereas
>in r x c tables one (apparently one-sided) p value only is shown.

A one-sided test with two nominal variables would not make sense, for anything beyond 2X2, since there is no direction to the association.

>What is your opinion? At the moment I rather think about applying
>tests that were designed for ordinal / ordinal relationships in r x c
>contingency tables (say, Goodman and Kruskal's gamma) than
>embarking on a potentially hazardous procedure.

If your variables are nominal, gamma would not make sense. However, if your variables are actually ordered but your data are sparse, you might want to bootstrap the Gamma value:

bootstrap r(gamma), reps(1000) : tabulate rep78 pricecat, gamma

=-=-=-=-=-=-=-=-=-=-=-=-=
Mike Lacy
Fort Collins CO USA
(970) 491-6721 office

*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/