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


R dsyMatrix-class 對稱密集(壓縮或非壓縮)數值矩陣


R語言 dsyMatrix-class 位於 Matrix 包(package)。

說明

  • "dsyMatrix" 類是非壓縮存儲中的對稱密集矩陣類,

  • "dspMatrix" 是壓縮存儲中的對稱稠密矩陣類,請參閱 pack() 。僅存儲上三角形或下三角形。

類中的對象

可以分別通過 new("dsyMatrix", ...)new("dspMatrix", ...) 形式的調用來創建對象。

插槽

uplo

"character" 的對象。對於上三角,必須是"U",對於下三角,必須是"L"。

x

"numeric" 的對象。構成矩陣的數值,按列優先順序存儲。

DimDimnames

維度(長度為 2 "integer" )和相應的名稱(或 NULL ),請參閱 Matrix

factors

"list" 的對象。已為矩陣計算的分解的命名列表。

擴展

"dsyMatrix"擴展類"dgeMatrix",直接,而
"dspMatrix"擴展類"ddenseMatrix", 直接地。

兩者都直接擴展類 "symmetricMatrix" ,並且類 "Matrix" 和其他類間接擴展類 showClass("dsyMatrix") ,例如,用於詳細信息。

方法

規範

signature(x = "dspMatrix", type = "character")x = "dsyMatrix"type = "missing" :計算所需類型的矩陣範數,請參閱 norm

rcond

signature(x = "dspMatrix", type = "character")x = "dsyMatrix"type = "missing" :計算條件數的倒數 rcond()

解決

signature(a = "dspMatrix", b = "....")

解決

signature(a = "dsyMatrix", b = "....") : x <- solve(a,b) 解為 ;請參閱solve-methods

t

signature(x = "dsyMatrix"):轉置;從上三角存儲交換到下三角存儲,即 uplo 槽從 "U" 交換到 "L" 或反之亦然,與所有對稱矩陣相同。

例子


## Only upper triangular part matters (when uplo == "U" as per default)
(sy2 <- new("dsyMatrix", Dim = as.integer(c(2,2)), x = c(14, NA,32,77)))
str(t(sy2)) # uplo = "L", and the lower tri. (i.e. NA is replaced).

chol(sy2) #-> "Cholesky" matrix
(sp2 <- pack(sy2)) # a "dspMatrix"

## Coercing to dpoMatrix gives invalid object:
sy3 <- new("dsyMatrix", Dim = as.integer(c(2,2)), x = c(14, -1, 2, -7))
try(as(sy3, "dpoMatrix")) # -> error: not positive definite


## 4x4 example
m <- matrix(0,4,4); m[upper.tri(m)] <- 1:6
(sym <- m+t(m)+diag(11:14, 4))
(S1 <- pack(sym))
(S2 <- t(S1))
stopifnot(all(S1 == S2)) # equal "seen as matrix", but differ internally :
str(S1)
S2@x

也可以看看

正(半)定稠密(壓縮或非壓縮數值矩陣類 dpoMatrixdppMatrixcorMatrix

dgeMatrixMatrixsolvenormrcondt

相關用法


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