Re: [Rd] Out of bounds negative index

From: Duncan Murdoch <murdoch_at_stats.uwo.ca>
Date: Fri, 02 May 2008 15:46:38 -0400

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



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Fri 02 May 2008 - 19:49:17 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 Fri 02 May 2008 - 21:32:04 GMT.

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

list of date sections of archive