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


R isTriangular-methods 测试矩阵是三角形还是对角矩阵


R语言 isTriangular-methods 位于 Matrix 包(package)。

说明

isTriangularisDiagonal 分别测试它们的参数是三角矩阵还是对角矩阵。与类似的 isSymmetric 不同,这两个函数通常来自 Matrix 而不是 base 。因此,除了从虚拟类 "Matrix" 继承的矩阵之外,Matrix 还定义了隐式 class "matrix" 的传统矩阵的方法。

根据我们的定义,三角形和对角矩阵是方形的,即它们具有相同的行数和列数。

用法

isTriangular(object, upper = NA, ...)

isDiagonal(object)

参数

object

一个R对象,通常是一个矩阵。

upper

logicalTRUEFALSE ,在这种情况下,仅针对上三角或下三角 object 返回 TRUE ;否则 NA (默认),在这种情况下,对于任何三角形 object 都会返回 TRUE

...

传递给方法的更多参数(当前由 Matrix 未使用)。

logicalTRUEFALSE (绝不是 NA )。

如果 object 是三角形且 upperNA ,则 isTriangular 返回带有 attribute kindTRUE ("U""L" ),指示 object 是上还是下分别为三角形。用户不应依赖对角矩阵(上三角和下三角)的kind 的确定方式。

例子

isTriangular(Diagonal(4))
## is TRUE: a diagonal matrix is also (both upper and lower) triangular
(M <- Matrix(c(1,2,0,1), 2,2))
isTriangular(M) # TRUE (*and* of formal class "dtrMatrix")
isTriangular(as(M, "generalMatrix")) # still triangular, even if not "formally"
isTriangular(crossprod(M)) # FALSE

isDiagonal(matrix(c(2,0,0,1), 2,2)) # TRUE

## Look at implementations:
showMethods("isTriangular", includeDefs = TRUE)
showMethods("isDiagonal", includeDefs = TRUE)

也可以看看

isSymmetric;虚拟类"triangularMatrix""diagonalMatrix" 及其子类。

相关用法


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