Re: [Rd] subsetting matrix by subscript=0,x silently skips.

From: Hin-Tak Leung <hin-tak.leung_at_cimr.cam.ac.uk>
Date: Thu 18 Jan 2007 - 16:40:38 GMT

(I have taken off r-bug@, as multiple e-mails hitting r-bug@ probably will result in multiple bug reports, knowing most mail server will retry)

Tony Plate wrote:

> The help page for "[" says:
> 
> A third form of indexing is via a numeric matrix with the one column for 
> each dimension: each row of the index matrix then selects a single 
> element of the array, and the result is a vector. Negative indices are 
> not allowed in the index matrix. NA and zero values are allowed: rows of 
> an index matrix containing a zero are ignored, whereas rows containing 
> an NA produce an NA in the result.
> 
> So, I think it is behaving as documented.

Hmm, fair enough. I guess the NA one make sense (In R as a rule, NA in, NA out), but I am not sure I understand or agree with the rationale of silently ignoring (0,x) and (x,0)'s. Any reason for that?

HTL

> Hin-Tak Leung wrote:

>> (e-mailing to R-bugs is intentional - the web itnerface seems to
>> be down)
>>
>> > a<- cbind(c(1,2), c(3,4))
>> > a
>> [,1] [,2]
>> [1,] 1 3
>> [2,] 2 4
>>
>> > a[cbind(c(2,2), c(2,1))]
>> [1] 4 2
>> > a[cbind(c(2,3), c(2,1))]
>> Error: subscript out of bounds
>> > a[cbind(c(2,-1), c(2,1))]
>> Error: negative values are not allowed in a matrix subscript
>> > a[cbind(c(2,0), c(2,1))]
>> [1] 4
>>
>> Am somewhat surprised that 2,0 just silently skip over and doesn't
>> throw an error like 2,0 and 2,-1 . Surely it should throw
>> an error about subscript should be >= 1?
>>
>>
>>
>> > sessionInfo()
>> R version 2.4.1 (2006-12-18)
>> i686-redhat-linux-gnu
>>
>> locale:
>> LC_CTYPE=en_GB.UTF-8;LC_NUMERIC=C;LC_TIME=en_GB.UTF-8;LC_COLLATE=en_GB.UTF-8;LC_MONETARY=en_GB.UTF-8;LC_MESSAGES=en_GB.UTF-8;LC_PAPER=en_GB.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_GB.UTF-8;LC_IDENTIFICATION=C
>>
>>
>> attached base packages:
>> [1] "splines" "stats" "graphics" "grDevices" "utils"
>> "datasets"
>> [7] "methods" "base"
>>
>> other attached packages:
>> snpMatrix survival
>> "1.0.4" "2.30"
>> >
>>
>> ______________________________________________
>> R-devel@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>

R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Fri Jan 19 04:26:42 2007

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Thu 18 Jan 2007 - 20:31:11 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.