| crossprod {base} | R Documentation |
Matrix Crossproduct
Description
Given matrices x and y as arguments, return a matrix
cross-product. This is formally equivalent to (but usually slightly
faster than) the call t(x) %*% y (crossprod) or
x %*% t(y) (tcrossprod).
Usage
crossprod(x, y = NULL)
tcrossprod(x, y = NULL)
Arguments
x, y |
numeric or complex matrices: |
Value
A double or complex matrix, with appropriate dimnames taken
from x and y.
Note
When x or y are not matrices, they are treated as column or
row matrices, but their names are usually not
promoted to dimnames. Hence, currently, the last
example has empty dimnames.
References
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
See Also
%*% and outer product %o%.
Examples
(z <- crossprod(1:4)) # = sum(1 + 2^2 + 3^2 + 4^2)
drop(z) # scalar
x <- 1:4; names(x) <- letters[1:4]; x
tcrossprod(as.matrix(x)) # is
identical(tcrossprod(as.matrix(x)),
crossprod(t(x)))
tcrossprod(x) # no dimnames