[R] indexing an array using an index-array, but one entry being ', '

Christoph Lehmann christoph.lehmann at gmx.ch
Tue Apr 19 15:48:39 CEST 2005


OK, the hint by Dimitris applied I just do very simple:


test <- array(c(1:16), dim = c(3,4,3))
test
## I call some enries using an index array
test.ind <- array(rbind(c(1,2,1), c(3,3,2)), dim = c(2,3))
test[test.ind]

## suppose I want all values in the 2nd row and 4th col over
## all three 3rd dimensions
test[2,4,]

## using an index array
nn <- dim(test)[3]
voxel.ind <- c(2, 4)
test.ind <- array(cbind(rep(voxel.ind[1], nn), rep(voxel.ind[2], nn), 
1:nn), dim = c(nn, 3))

test[test.ind]

cheers
christoph
Christoph Lehmann wrote:
> Hi
> I have the following array:
> 
> test <- array(c(1:16), dim = c(3,4,3))
> test
> ## I call some enries using an index array
> test.ind <- array(rbind(c(1,2,1), c(3,3,2)), dim = c(2,3))
> test[test.ind]
> 
> ## suppose I want all values in the 2nd row and 4th col over
> ## all three 3rd dimensions
> test[2,4,]
> 
> 
> how to specify a test.ind array with the last index left with ',' i.e
> test.ind should be evaluated as "2, 4, , " so that it can be
> calledlike above as test[test.ind] and the
> result should be [1] 11  7  3
> 
> thanks for a hint
> Cheers
> christoph
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html
> 
>




More information about the R-help mailing list