[Rd] Out of bounds negative index
Duncan Murdoch
murdoch at stats.uwo.ca
Fri May 2 21:46:38 CEST 2008
On 5/2/2008 3:23 PM, Vincent Goulet wrote:
> Hi,
>
> From the R Language Definition, Section 3.4.1:
>
> "If i is positive and exceeds length(x) then the corresponding
> selection is NA. A negative out of bounds value for i causes an error."
>
> (This is also mentioned in S Programming, footnote of page 24.)
>
> Can someone please provide an example triggering the error? Looking in
> src/main/subscript.c I could not find exception handling for |i| >
> length(x), unless the negative subscript is mixed with NAs. In other
> cases, out of bounds negative indexes just seem silently ignored.
>
> Did I missed or misinterpreted something, here?
Looks to me like a documentation error. I would expect from that
description that executing
> x <- 1:5
> x[7]
[1] NA
> x[-7]
[1] 1 2 3 4 5
would have given an error on x[-7], but clearly it didn't. This
behaviour appears to have started with 2.6.0; 2.5.1 gives the error. I
don't see a NEWS entry about it...but revision r42123 says
Changed the behaviour of out-of-bounds negative
subscripts to match that of S. Such values are
now ignored rather than tripping an error.
so apparently it was intentional.
Duncan Murdoch
More information about the R-devel
mailing list