[R] avoiding loops

Ingmar Visser i.visser at uva.nl
Wed Mar 26 22:58:16 CET 2008


Hi,
I need to compute an array from a matrix and an array:

A <- array(1:20,c(2,2,5))
B <- matrix(1:10,5)

And I would like the result to be an array consisting of the following:

rbind(A[1,,1]*B[1,],
A[2,,1]*B[1,])

rbind(A[1,,2]*B[2,],
A[2,,2]*B[2,])

rbind(A[1,,3]*B[2,],
A[2,,3]*B[2,])

etc.

Hence the result should have the same dimension as A, ie a series of  
2 by 2 matrices.

Short of a for loop over the the last index of A I have struggled  
with versions of apply but
to no avail ...

Any insights much appreciated,

Best, Ingmar



More information about the R-help mailing list