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


R dtrMatrix-class 三角形稠密數值矩陣


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

說明

"dtrMatrix" 類是非壓縮存儲中的三角形稠密數字矩陣類。除了打包存儲之外,"dtpMatrix" 類是相同的,請參閱 pack()

類中的對象

可以通過調用 new("dtrMatrix", ...) 形式來創建對象。

插槽

uplo

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

diag

"character" 的對象。必須是 "U" ,單位為三角形(對角線全為 1),或 "N" ;請參閱triangularMatrix

x

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

Dim

"integer" 的對象。矩陣的維度必須是非負整數的二元素向量。

擴展

直接類 "ddenseMatrix" 。直接類 "triangularMatrix" 。類 "Matrix" 和其他類,按類 "ddenseMatrix"

方法

其中(例如矩陣乘積,例如 ?crossprod-methods ),

規範

signature(x = "dtrMatrix", type = "character")

rcond

signature(x = "dtrMatrix", norm = "character")

解決

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

分別有效地使用 “forwardsolve” 或 backsolve 作為下三角矩陣或上三角矩陣,另請參閱 solve-methods

+、-、*、...、==、>=、...

所有 Ops 組方法都可用。當應用於兩個三角矩陣時,它們會很容易地返回三角矩陣。

例子



(m <- rbind(2:3, 0:-1))
(M <- as(m, "generalMatrix"))

(T <- as(M, "triangularMatrix")) # formally upper triangular
(T2 <- as(t(M), "triangularMatrix"))
stopifnot(T@uplo == "U", T2@uplo == "L", identical(T2, t(T)))

m <- matrix(0,4,4); m[upper.tri(m)] <- 1:6
(t1 <- Matrix(m+diag(,4)))
str(t1p <- pack(t1))
(t1pu <- diagN2U(t1p))
stopifnot(exprs = {
   inherits(t1 , "dtrMatrix"); validObject(t1)
   inherits(t1p, "dtpMatrix"); validObject(t1p)
   inherits(t1pu,"dtCMatrix"); validObject(t1pu)
   t1pu@x == 1:6
   all(t1pu == t1p)
   identical((t1pu - t1)@x, numeric())# sparse all-0
})

也可以看看

ddenseMatrixdtpMatrixtriangularMatrix

相關用法


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