R语言
crossprod
位于 base
包(package)。 说明
将矩阵 x
和 y
作为参数,返回矩阵 cross-product。这在形式上相当于(但通常比)调用 t(x) %*% y
( crossprod
) 或 x %*% t(y)
( tcrossprod
)。
用法
crossprod(x, y = NULL)
tcrossprod(x, y = NULL)
参数
x , y |
数字或复数矩阵(或向量): |
值
双精度或复数矩阵,适当的 dimnames
取自 x
和 y
。
注意
当 x
或 y
不是矩阵时,它们被视为列或行矩阵,但它们的 names
通常不会提升为 dimnames
。因此,目前,最后一个示例具有空的暗名称。
在同样的情况下,这些矩阵乘积(也%*%
)在将向量提升为行或列矩阵方面更加灵活,因此允许更多情况,因为R3.2.0。
NaN/Inf 值的传播、精度和矩阵乘积的性能可以通过 options("matprod")
控制。
例子
(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
m <- matrix(1:6, 2,3) ; v <- 1:3; v2 <- 2:1
stopifnot(identical(tcrossprod(v, m), v %*% t(m)),
identical(tcrossprod(v, m), crossprod(v, t(m))),
identical(crossprod(m, v2), t(m) %*% v2))
参考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
也可以看看
相关用法
- R chartr 字符翻译和装箱
- R chol2inv Cholesky(或 QR)分解的逆分解
- R cumsum 累积和、乘积和极值
- R col 列索引
- R character 字符向量
- R c 将值组合到向量或列表中
- R conditions 状况处理和恢复
- R cut 将数字转换为因子
- R class 对象类
- R connections 操作连接的函数(文件、URL...)
- R comment 查询或设置“评论”属性
- R complex 复数和基本函数
- R chooseOpsMethod 选择适当的操作方法
- R colSums 形成行和列的总和及平均值
- R chol 乔列斯基分解
- R commandArgs 提取命令行参数
- R cbind 按行或列组合 R 对象
- R curlGetHeaders 从 URL 中检索标头
- R cat 连接并打印
- R capabilities 此 R 版本的报告函数
- R callCC 调用当前延续
- R call 函数调用
- R charmatch 部分字符串匹配
- R chkDots 警告调用者的“...”中存在无关参数
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Matrix Crossproduct。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。