當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R crossprod 矩陣叉積


R語言 crossprod 位於 base 包(package)。

說明

將矩陣 xy 作為參數,返回矩陣 cross-product。這在形式上相當於(但通常比)調用 t(x) %*% y ( crossprod ) 或 x %*% t(y) ( tcrossprod )。

用法

 crossprod(x, y = NULL)
tcrossprod(x, y = NULL)

參數

x , y

數字或複數矩陣(或向量): y = NULL 被視為與 x 相同的矩陣。根據上下文,向量將提升為 single-column 或單行矩陣。

雙精度或複數矩陣,適當的 dimnames 取自 xy

注意

xy 不是矩陣時,它們被視為列或行矩陣,但它們的 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.

也可以看看

%*% 和外積 %o%

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Matrix Crossproduct。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。