[Rd] R 2.3.0 (alpha) on FreeBSD 6.1 fails make check-all
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Mar 28 13:02:11 CEST 2006
Then we need you to dig in to find out why. I'd start by seeing if Phyper
had changed (either by printing it to 16dp or by saving it from 2.2.1 and
reloading into 2.3.0).
On Tue, 28 Mar 2006, Andrew Robinson wrote:
> I get:
>
>> Rhyper <- scan()
> 1: 16 11 11 15 11 13 13 12 13 10 10 7 11 14 13 9 14 13 13 11
> 21:
> Read 20 items
>> Phyper <- phyper (Rhyper, m = 40, n = 30, k = 20)
>> qhyper(Phyper, m = 40, n = 30, k = 20)
> [1] 16 11 11 15 11 13 13 12 13 10 10 8 11 14 13 9 14 13 13 11
>
>
> The 12th element (8) differs from the input (7).
>
>
>> Phyper <- phyper (7, m = 40, n = 30, k = 20)
>> qhyper(Phyper, m = 40, n = 30, k = 20)
> [1] 8
>
>
> If I do this using 2.2.1 then the input and the output are identical.
>
>
>
>
> On Tue, Mar 28, 2006 at 10:27:08AM +0100, Prof Brian Ripley wrote:
>> On Tue, 28 Mar 2006, Andrew Robinson wrote:
>>
>>> You're welcome. You are correct. d-p-q-r-tests.Rout.fail
>>> shows:
>>>
>>>> All.eq(Rhyper, qhyper (Phyper, m = 40, n = 30, k = 20))
>>> [1] "Mean scaled difference: 0.08333333"
>>
>> Yes, please run the lines below, e.g.
>>
>> Rhyper <- scan()
>> 16 11 11 15 11 13 13 12 13 10 10 7 11 14 13 9 14 13 13 11
>>
>> Phyper <- phyper (Rhyper, m = 40, n = 30, k = 20)
>> qhyper(Phyper, m = 40, n = 30, k = 20)
>>
>> and tell us what answer you get.
>>
>>
>>>
>>>
>>>
>>> Let me know if/how I can further assist.
>>>
>>> Andrew
>>>
>>>
>>>
>>> On Tue, Mar 28, 2006 at 09:03:48AM +0100, Prof Brian Ripley wrote:
>>>> Thanks for checking.
>>>>
>>>> Please look in d-p-q-r-tests.Rout.fail and see what immediately preceeds
>>>> the line
>>>>
>>>> [1] "Mean scaled difference: 0.08333333"
>>>>
>>>> Some experimentation suggests it is
>>>>
>>>>> All.eq(Rhyper, qhyper (Phyper, m = 40, n = 30, k = 20))
>>>>
>>>> If so, we have
>>>>
>>>> Rhyper <- scan()
>>>> 16 11 11 15 11 13 13 12 13 10 10 7 11 14 13 9 14 13 13 11
>>>>
>>>> Phyper <- phyper (Rhyper, m = 40, n = 30, k = 20)
>>>>
>>>> and those have been checked. So the error would appear to be in
>>>>
>>>> qhyper(Phyper, m = 40, n = 30, k = 20)
>>>>
>>>> and indeed a mean scaled difference of 1/12 is plausible, since the mean
>>>> of Rhyper is 12. So I deduce that your platform has a problem in qhyper,
>>>> but please cross-check.
>>>>
>>>> If so, this is strange as the only recent change to qhyper.c (or things I
>>>> can see it uses such as lfastchoose) is cosmetic.
>>>>
>>>> Can you confirm the diagnosis is correct so far?
>>>>
>>>>
>>>> On Tue, 28 Mar 2006, Andrew Robinson wrote:
>>>>
>>>>> Hi Developers,
>>>>>
>>>>> The alpha, compiles successfully, but it is failing make check-all (on
>>>>> two seperate machines, both FreeBSD 6.1).
>>>>>
>>>>> Here is the version string:
>>>>>
>>>>> platform i386-unknown-freebsd6.1
>>>>> arch i386
>>>>> os freebsd6.1
>>>>> system i386, freebsd6.1
>>>>> status alpha
>>>>> major 2
>>>>> minor 3.0
>>>>> year 2006
>>>>> month 03
>>>>> day 27
>>>>> svn rev 37584
>>>>> language R
>>>>> version.string Version 2.3.0 alpha (2006-03-27 r37584)
>>>>>
>>>>>
>>>>>
>>>>> Here is the error message from make check-all
>>>>>
>>>>> comparing 'd-p-q-r-tests.Rout' to './d-p-q-r-tests.Rout.save'
>>>>> ...706c706
>>>>> < [1] "Mean scaled difference: 0.08333333"
>>>>> ---
>>>>>> [1] TRUE
>>>>> gmake[3]: *** [d-p-q-r-tests.Rout] Error 1
>>>>> gmake[3]: Leaving directory `/usr/local/beta/R-alpha/tests'
>>>>> gmake[2]: *** [test-Specific] Error 2
>>>>> gmake[2]: Leaving directory `/usr/local/beta/R-alpha/tests'
>>>>> gmake[1]: *** [test-all-basics] Error 1
>>>>> gmake[1]: Leaving directory `/usr/local/beta/R-alpha/tests'
>>>>> gmake: *** [check-all] Error 2
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I have checked d-p-q-r-tests.Rout.fail for any obvious problems - I
>>>>> found some warnings, viz.
>>>>>
>>>>>
>>>>>
>>>>>> pgamma(1,Inf,scale=Inf) == 0
>>>>> [1] TRUE
>>>>>> ## Also pgamma(Inf,Inf) == 1 for which NaN was slightly more
>>>>> appropriate
>>>>>> all(is.nan(c(pgamma(Inf, 1,scale=Inf),
>>>>> + pgamma(Inf,Inf,scale=Inf))))
>>>>> [1] TRUE
>>>>> Warning messages:
>>>>> 1: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p)
>>>>> 2: NaNs produced in: pgamma(q, shape, scale, lower.tail, log.p)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> x0 <- -2 * 10^-c(22,10,7,5)
>>>>>> stopifnot(pbinom(x0, size = 3, prob = 0.1) == 0,
>>>>> + dbinom(x0, 3, 0.1) == 0) # d*() warns about non-integer
>>>>> Warning messages:
>>>>> 1: non-integer x = -0.000000
>>>>> 2: non-integer x = -0.000020
>>>>>> ## very small negatives were rounded to 0 in R 2.2.1 and earlier
>>>>>>
>>>>>
>>>>>
>>>>> I hope that this is helpful. Thanks are due to Peter Dalgaard for
>>>>> guidance. So, thanks Peter :).
>>>>>
>>>>> Cheers
>>>>>
>>>>> Andrew
>>>>>
>>>>
>>>> --
>>>> Brian D. Ripley, ripley at stats.ox.ac.uk
>>>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>>>> University of Oxford, Tel: +44 1865 272861 (self)
>>>> 1 South Parks Road, +44 1865 272866 (PA)
>>>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>>>
>>>
>>
>> --
>> Brian D. Ripley, ripley at stats.ox.ac.uk
>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>> University of Oxford, Tel: +44 1865 272861 (self)
>> 1 South Parks Road, +44 1865 272866 (PA)
>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>
>
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel
mailing list