From: Ted Harding <ted.harding_at_wlandres.net>

Date: Thu, 14 Apr 2011 16:37:48 +0100 (BST)

fisher.test(M)$p.value

# [1] 0.3917553

mina <- (-1) ; maxa <- 4

As <- (mina:maxa)

Ps <- numeric(length(As))

for(i in (1:length(As))){

a <- As[i]

dM <- matrix(c(a,-a,-a,a),nrow=2)

Ps[i] <- fisher.test(M+dM)$p.value

}

Ps

# [1] 0.070002593 0.391755250 1.000000000 0.639558667 # [5] 0.148849134 0.009276064

*>
*

*>
*

*> --
*

> Thanks,

*> Jim.
*

E-Mail: (Ted Harding) <ted.harding_at_wlandres.net> Fax-to-email: +44 (0)870 094 0861

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Thu 14 Apr 2011 - 15:54:20 GMT

Date: Thu, 14 Apr 2011 16:37:48 +0100 (BST)

Thanks for the clarification, Jim. The terminology "previous"
was not self-explanatory!

The following implements (in a somewhat crude way, but explicit) a solution to your question:

M <- matrix(c(1, 4, 23, 30), byrow=TRUE, ncol=2) M

# [,1] [,2] # [1,] 1 4 # [2,] 23 30

fisher.test(M)$p.value

# [1] 0.3917553

mina <- (-1) ; maxa <- 4

As <- (mina:maxa)

Ps <- numeric(length(As))

for(i in (1:length(As))){

a <- As[i]

dM <- matrix(c(a,-a,-a,a),nrow=2)

Ps[i] <- fisher.test(M+dM)$p.value

}

Ps

# [1] 0.070002593 0.391755250 1.000000000 0.639558667 # [5] 0.148849134 0.009276064

So, amongst the P-values, the one below the attained one (0.3917553) which is greatest is Ps[5] = 0.148849134. This could be identified by the expression

max(Ps[Ps < fisher.test(M)$p.value])

# [1] 0.1488491

If fisher.test(M)$p.value were already the smallest possible value, then this expression would return -Inf.

Ted.

On 14-Apr-11 14:55:36, Jim Silverton wrote:

> What Ted and Peter did were Fisher's exact test, To get the previous

*> attainable p-value, what you do is the the fisher exact test p-values
**> of
**> ALL the possible tables with margins fixed and choose the p-value that
**> is
**> just below the one for fisher's exact test of the original table.
**>
**> n Thu, Apr 14, 2011 at 3:01 AM, peter dalgaard <pdalgd_at_gmail.com>
**> wrote:
**>
*

>> >> On Apr 14, 2011, at 01:29 , (Ted Harding) wrote: >> >> > On 13-Apr-11 17:40:53, Jim Silverton wrote: >> >> I have a matrix say, >> >> >> >> 1 4 >> >> 23 30 >> >> >> >> and I want to find the previously attainable fisher's exact test >> >> p-value. Is there a way to do this in R? >> >> -- >> >> Thanks, >> >> Jim. >> > >> > I do not understand what you mean by "previously attainable". >> > >> > As far as that particular matrix is concerned, the fisher.test() >> > function will yield its exact Fisher P-value: >> > >> > M <- matrix(c(1, 4, 23, 30), byrow=TRUE, nrow=2) >> > M >> > # [,1] [,2] >> > # [1,] 1 4 >> > # [2,] 23 30 >> > fisher.test(M) >> > # Fisher's Exact Test for Count Data >> > # data: M >> > # p-value = 0.3918 >> > # alternative hypothesis: true odds ratio is not equal to 1 >> > # 95 percent confidence interval: >> > # 0.006355278 3.653391412 >> > # sample estimates: >> > # odds ratio >> > # 0.3316483 >> > >> > So the P-value is 0.3918 (as attained now, and as attainable >> > at any time previously if you had done the above ... !). >> > >> >> What Ted said, plus >> >> f <- fisher.test(M) >> f$p.value >> # [1] 0.3917553 >> >> >> -- >> Peter Dalgaard >> Center for Statistics, Copenhagen Business School >> Solbjerg Plads 3, 2000 Frederiksberg, Denmark >> Phone: (+45)38153501 >> Email: pd.mes_at_cbs.dk Priv: PDalgd_at_gmail.com >> >>

> Thanks,

E-Mail: (Ted Harding) <ted.harding_at_wlandres.net> Fax-to-email: +44 (0)870 094 0861

Date: 14-Apr-11 Time: 16:37:44 ------------------------------ XFMail ------------------------------ ______________________________________________R-help_at_r-project.org mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Thu 14 Apr 2011 - 15:54:20 GMT

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.2.0, at Thu 14 Apr 2011 - 16:00:29 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*