Learn R Programming

rv (version 1.0)

matmult: Random Matrix Multiplication

Description

Multiplies two random matrices, if they are conformable. If one argument is a vector, it will be coerced to either a row or column matrix to make the two arguments conformable. If both are vectors it will return the inner product.

Usage

## S3 method for class 'rv':
\%*\%(x, y)

Arguments

x, y
numeric or complex matrices or vectors.

Value

  • The (distribution of the) matrix product. Use drop to get rid of dimensions which have only one level.

Details

Optimized internally for the case of random matrix multiplied by a constant column vector.

References

Kerman, J. and Gelman, A. (2007). Manipulating and Summarizing Posterior Simulations Using Random Variable Objects. Statistics and Computing 17:3, 235-244.

See also vignette("rv").

See Also

matrix, Ops, diag.

Examples

Run this code
x <- 1:4
(z <- x %*% x)    # scalar ("inner") product (1 x 1 matrix)
drop(z)             # as scalar

y <- diag(x)
z <- matrix(1:12, ncol = 3, nrow = 4)
y %*% z
y %*% x
x %*% z

Run the code above in your browser using DataLab