[R] looping through 3D array

arun smartpink111 at yahoo.com
Thu Jan 9 21:46:46 CET 2014


results<- array(sample(1:400,120,replace=TRUE),dim=c(10,3,4)) 
res <- sapply(seq(dim(results)[1]),function(i) {x1 <- results[i,,]; x2 <- results; sapply(seq(dim(x2)[1]),function(i) emd2d(x1,x2[i,,]))})
#[1] 10 10

On Thursday, January 9, 2014 3:25 PM, alex padron <alexpadron1082 at gmail.com> wrote:

I'll try to be clearer. in your example we have: results<- array(1:120,dim=c(10,3,4)) 

I want to do the following: compare results[1,,] with every matrix inside results. I then want to jump to results[2,,] and compare it to all of the other 10 matrices inside results and so on. so emd2d from the emdist package outputs a single value when comparing matrices and since your example has 10 matrices who are all being compared, the output should be 100 values. 

Does that make sense?


More information about the R-help mailing list