当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。