[R] retrieving matrix elements by giving pairs of row AND column numbers?
Werner Wernersen
pensterfuzzer at yahoo.de
Wed Oct 22 20:36:34 CEST 2008
I thought I've tried this already and that it doesn't work -- madness.
Anyway, Jeff kindly sent me the solution:
m[cbind(c(1,2,3),c(1,3,1))]
does the trick.
Thanks,
Werner
Hi,
this is probably a very trivial question but I can't figure out the right terms to find the solution in the list archive.
I have a matrix or a data.frame or the like:
> m <- matrix(ncol=3,seq(1,9))
> m
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
and now I wonder if one can provide somehow two vectors, one containing row numbers, the other column numbers and thereby retrieve the corresponding elements?
E.g., providing the 2 vectors c(1,2,3) and c(1,3,1) should return the matrix values c(1,8,3).
I ran a couple of times into this problem and always used some awkward transformations to get around it.
But as I know R, there is probably some slick way to do this.
Thanks!!!
Werner
More information about the R-help
mailing list