R语言
band-methods
位于 Matrix
包(package)。 说明
返回通过将对角线下方 ( triu
)、对角线上方 ( tril
) 或一般带外 ( band
) 之外的元素设置为零而获得的矩阵。
用法
band(x, k1, k2, ...)
triu(x, k = 0L, ...)
tril(x, k = 0L, ...)
参数
x |
类似矩阵的对象 |
k , k1 , k2 |
指定未设置为零的对角线的整数。这些是相对于主对角线(即 |
... |
可选参数传递方法(当前由包 |
细节
triu(x, k)
相当于 band(x, k, dim(x)[2])
。类似地, tril(x, k)
相当于 band(x, -dim(x)[1], k)
。
值
合适矩阵类的对象,在适当的情况下继承自triangularMatrix
。当且仅当 x
继承时,它才继承自 sparseMatrix
。
方法
- x = "CsparseMatrix"
-
用于压缩、稀疏、column-oriented 矩阵的方法。
- x = "RsparseMatrix"
-
用于压缩、稀疏、row-oriented 矩阵的方法。
- x = "TsparseMatrix"
-
三元组格式的稀疏矩阵的方法。
- x = "diagonalMatrix"
-
对角矩阵的方法。
- x = "denseMatrix"
-
用于压缩或非压缩格式的密集矩阵的方法。
- x = "matrix"
-
隐式类
matrix
的传统矩阵的方法。
例子
## A random sparse matrix :
set.seed(7)
m <- matrix(0, 5, 5)
m[sample(length(m), size = 14)] <- rep(1:9, length=14)
(mm <- as(m, "CsparseMatrix"))
tril(mm) # lower triangle
tril(mm, -1) # strict lower triangle
triu(mm, 1) # strict upper triangle
band(mm, -1, 2) # general band
(m5 <- Matrix(rnorm(25), ncol = 5))
tril(m5) # lower triangle
tril(m5, -1) # strict lower triangle
triu(m5, 1) # strict upper triangle
band(m5, -1, 2) # general band
(m65 <- Matrix(rnorm(30), ncol = 5)) # not square
triu(m65) # result not "dtrMatrix" unless square
(sm5 <- crossprod(m65)) # symmetric
band(sm5, -1, 1)# "dsyMatrix": symmetric band preserves symmetry property
as(band(sm5, -1, 1), "sparseMatrix")# often preferable
(sm <- round(crossprod(triu(mm/2)))) # sparse symmetric ("dsC*")
band(sm, -1,1) # remains "dsC", *however*
band(sm, -2,1) # -> "dgC"
也可以看看
bandSparse
用于直接从非零对角线构造带状稀疏矩阵。
相关用法
- R bandSparse 从(上/上)对角线构造稀疏带状矩阵
- R bdiag 构建分块对角矩阵
- R boolmatmult-methods 布尔算术矩阵乘积:%&% 和方法
- R dtrMatrix-class 三角形稠密数值矩阵
- R facmul-methods 乘以矩阵因式分解的因数
- R solve-methods 函数求解矩阵包中的方法
- R updown-methods 更新和降级稀疏 Cholesky 分解
- R printSpMatrix 灵活格式化和打印稀疏矩阵
- R symmetricMatrix-class 包矩阵中对称矩阵的虚拟类
- R all.equal-methods 函数 all.equal() 的矩阵封装方法
- R ltrMatrix-class 三角密集逻辑矩阵
- R Hilbert 生成希尔伯特矩阵
- R nearPD 最近正定矩阵
- R lsyMatrix-class 对称密集逻辑矩阵
- R CHMfactor-class 稀疏 Cholesky 分解
- R symmpart-methods 矩阵的对称部分和偏斜(对称)部分
- R sparseMatrix 从非零项构建一般稀疏矩阵
- R dgCMatrix-class 压缩、稀疏、面向列的数值矩阵
- R Cholesky-methods Cholesky 分解方法
- R Subassign-methods “[<-”的方法 - 分配给“矩阵”的子集
- R ldenseMatrix-class 密集逻辑矩阵的虚拟类“ldenseMatrix”
- R norm-methods 矩阵范数
- R ngeMatrix-class 一般密集非零模式矩阵的“ngeMatrix”类
- R CAex 阿尔伯斯的示例矩阵与“困难”特征分解
- R diagonalMatrix-class 对角矩阵的“diagonalMatrix”类
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Extract bands of a matrix。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。