[R] horizontal direct product
Thomas Lumley
tlumley at u.washington.edu
Sat Aug 26 02:21:16 CEST 2006
On Fri, 25 Aug 2006, Luke Keele wrote:
> II am translating some gauss code into R, and gauss has a matrix
> product function called the horizontal direct product (*~), which is
> some sort of variant on the Kronecker product.
>
> For example if x is 2x2 and y is 2x2
>
> the horizontal direct product, z, of x and y is defined (in the Gauss
> manual) as:
>
> row 1 = x11*y11 x11*y12 x12*y11 x12*y12
> row 2 = x21*y21 x21*y22 x22*y21 x22*y22
>
It looks as though
"%~%" <- function (A, B)
{
m <- ncol(A)
n <- ncol(B)
A[, rep(1:m, each = n)] * B[, rep(1:n, m)]
}
would do it.
-thomas
Thomas Lumley Assoc. Professor, Biostatistics
tlumley at u.washington.edu University of Washington, Seattle
More information about the R-help
mailing list