Hello Juhana

try this (but there must be a better way!)



stratified.select <- function(A,J){
  out <- sapply(J,function(i){sample(A[,,i],1)})
  attributes(out) <- attributes(J)
  return(out)
}

A <- array(letters[1:12],c(2,2,3))
J <- matrix(c(1,2,3,3),2,2)


R> stratified.select(A,J) [,1] [,2] [1,] "b" "i" [2,] "g" "k" R> stratified.select(A,J) [,1] [,2] [1,] "d" "j" [2,] "f" "l" R>


best wishes

Robin




On Apr 26, 2005, at 05:16 am, juhana vartiainen wrote:

Hi all

Suppose I have a dim=c(2,2,3) matrix A, say:

A[,,1]=
a b
c d

A[,,2]=
e f
g h

A[,,3]=
i j
k l

Suppose that I want to create a 2x2 matrix X, which picks elements from the above-mentioned submatrices according to an index matrix J referring to the "depth" dimension:
J=
1 3
2 3


In other words, I want X to be
X=
a j
g l

since the matrix J says that the (1,1)-element should be picked from A[,,1], the (1,2)-element should be picked from A[,,3], etc.

I have A and I have J. Is there an expression in A and J that creates X?

Thanks

Juhana

[EMAIL PROTECTED]

--
Juhana Vartiainen

docent in economics
Director, FIEF (Trade Union Foundation for Economic Research, Stockholm), http://www.fief.se
gsm +46 70 360 9915
office +46 8 696 9915
email [EMAIL PROTECTED]
homepage http://www.fief.se/staff/Juhana/index.html


______________________________________________
R-help@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



--
Robin Hankin
Uncertainty Analyst
Southampton Oceanography Centre
European Way, Southampton SO14 3ZH, UK
 tel  023-8059-7743

______________________________________________
R-help@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

Reply via email to