Message-ID: <366c6f340911011223n75301503pd0182767007b087e@mail.gmail.com>
Date: 2009-11-01T20:23:30Z
From: Peng Yu
Subject: underflow of fisher.test result
In-Reply-To: <XFMail.091020151429.Ted.Harding@manchester.ac.uk>
On Tue, Oct 20, 2009 at 8:14 AM, Ted Harding
<Ted.Harding at manchester.ac.uk> wrote:
> On 20-Oct-09 13:34:49, Peng Yu wrote:
>> fisher.test() gives a very small p-value, which is underflow on my
>> machine. However, the log of it should not be underflow. I'm wondering
>> if there is a way get log() of a small p-value. An approximation is
>> acceptable in this case. Thank you!
>>
>>> fisher.test(rbind(c(10000,100000),c(100000,10000000)))$p.value
>> [1] 0
>
> I have not attempted an exact approach (though may do so later),
> but the P-value in question is about 1e-15000 so (using log to
> base e)
>
> ?log(P) approx = -33000
>
> In such a case, P=0 is a pretty good approximation!
>
> Which prompts the question: Why the interest in having the value
> of such a very small number?
Is there any existing method that could return a log() of a very small p-value?