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


R dtpMatrix-class 填充三角密集矩阵 - “dtpMatrix”


R语言 dtpMatrix-class 位于 Matrix 包(package)。

说明

"dtpMatrix" 类是打包存储中的三角形稠密数字矩阵类。除了非压缩存储之外,"dtrMatrix" 类是相同的。

类中的对象

可以通过调用 new("dtpMatrix", ...) 形式或通过其他矩阵类的强制来创建对象。

插槽

uplo

"character" 的对象。对于上三角,必须是"U",对于下三角,必须是"L"。

diag

"character" 的对象。必须是 "U" ,单位为三角形(对角线全为 1),或 "N" ;请参阅triangularMatrix

x

"numeric" 的对象。构成矩阵的数值,按列优先顺序存储。对于维度为 的压缩方阵,length(x) 的长度为 (当 diag == "U" 时也是如此!)。

DimDimnames

尺寸(长度为 2 "integer" )和相应的名称(或 NULL ),继承自 Matrix ,请参阅此处。

扩展

直接类 "ddenseMatrix" 。直接类 "triangularMatrix" 。类 "dMatrix" 以及更多类 "ddenseMatrix" 等,请参阅示例。

方法

%*%

signature(x = "dtpMatrix", y = "dgeMatrix"):矩阵乘法;其他几个签名组合也是如此,请参阅 showMethods("%*%", class = "dtpMatrix")

行列式

signature(x = "dtpMatrix", logarithm = "logical")determinant(x) 本质上是 prod(diag(x)) ,但按对数刻度计算以防止上溢和下溢。

诊断

signature(x = "dtpMatrix"):...

规范

signature(x = "dtpMatrix", type = "character"):...

rcond

signature(x = "dtpMatrix", norm = "character"):...

解决

signature(a = "dtpMatrix", b = "...") :有效地使用内部反向求解或正向求解,请参阅solve-methods

t

signature(x = "dtpMatrix") :如果 x 是上三角,t(x) 仍然是 "dtpMatrix" ,下三角,反之亦然。

例子


showClass("dtrMatrix")

example("dtrMatrix-class", echo=FALSE)
(p1 <- pack(T2))
str(p1)
(pp <- pack(T))
ip1 <- solve(p1)
stopifnot(length(p1@x) == 3, length(pp@x) == 3,
          p1 @ uplo == T2 @ uplo, pp @ uplo == T @ uplo,
	  identical(t(pp), p1), identical(t(p1), pp),
	  all((l.d <- p1 - T2) == 0), is(l.d, "dtpMatrix"),
	  all((u.d <- pp - T ) == 0), is(u.d, "dtpMatrix"),
	  l.d@uplo == T2@uplo, u.d@uplo == T@uplo,
	  identical(t(ip1), solve(pp)), is(ip1, "dtpMatrix"),
	  all.equal(as(solve(p1,p1), "diagonalMatrix"), Diagonal(2)))

也可以看看

dtrMatrix

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Packed Triangular Dense Matrices - "dtpMatrix"。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。