Outer Product of Arrays

Usage

outer(X, Y, FUN="*", ...)
x %o% y

Arguments

X A vector or array.
Y A vector or array.
FUN a function to use on the outer products, it may be a quoted string.
... optional arguments to be passed to FUN.

Description

The outer product of the arrays X and Y is the array A with dimension c(dim(X), dim(Y)) where element A[i, j, .., k, l, ..] = FUN(X[i, j, ..], Y[k, l,..], ..).

Details

FUN must be a function (or the name of it) which expects at least two arguments and which operates elementwise on arrays.

Where they exist, the [dim]names of X and Y will be preserved.

%o% is an .Alias for outer (where FUN cannot be changed from "*").

Author(s)

Jonathan Rougier

See Also

matmult for usual (inner) matrix vector multiplication; kronecker which is based on outer.

Examples

x <- 1:9; names(x) <- x
# Multiplication & Power Tables
x %o% x
y <- 2:8; names(y) <- paste(y,":",sep="")
outer(y, x, "^")

outer(month.abb, 1999:2003, FUN = "paste")

## three way multiplication table:
x %o% x %o% y[1:3]


[Package Contents]