[Rd] inaccuracy in qbinom with partial argument matching
Peter.Ruckdeschel at uni-bayreuth.de
Fri Jun 29 12:06:41 CEST 2007
Petr Savicky wrote:
> Brian Ripley wrote:
>> I wrote:
>> > ## partial argument matching:
>> > qbinom(p0 , s = 3, p = 0.25) ## 1 ???
>> > qbinom(p0-0.05, s = 3, p = 0.25) ## 1 ???
>> > qbinom(p0-0.06, s = 3, p = 0.25) ## 0 o.K.
>> > Unfortunately I have no I idea how to fix this.
>> You use a call that specifies your intentions accurately. This is not
>> 'partial argument matching': 'p' is an exact match to the first argument
>> > args(qbinom)
>> function (p, size, prob, lower.tail = TRUE, log.p = FALSE)
>> and that is how argument matching in R is documented to work.
>> The 'inaccuracy' is in the diagnosis: please see the FAQ.
> Let me add an explanation, why
> qbinom(p0 , s = 3, p = 0.25)
> does not produce an error message about missing "prob" argument:
> Since "size" and "p" arguments are given, p0 is used for
> the third argument and not for the first.
> Although the behavior is logical, it may not be immediately clear.
> I do not see this case explicitly in FAQ or R-intro.pdf 10.3.
To close this thread:
First thanks to Brian and Petr for their explanation ---and to Petr
for defending me.
But I think, Brian was right, it was my fault not to see that qbinom's
first argument 'p' was matched against my abbreviated 'prob' argument
0.25, which is ---I think--- the reason for Brian's
"please see the FAQ"...
Although not itself an FAQ nor in the R-intro manual, argument matching
is completely & clearly described in
In fact my code is a badly chosen example:
I am working on automatically generated q-, (and r,d,p)- functions,
so left continuity of q<>-fct.'s is an issue.
Unfortunately numbers p0 and .25 are so close together that they gave
results only differing by 1 when interchanged, so I was led to the
conclusion that it was a left-continuity-issue of qbinom with partial
matched arguments which it was obviously not ---sorry for bothering
As a conclusion which may be worth noting for other occasions as well:
Be careful with partial argument matching !
More information about the R-devel