R语言
dimScale
位于 Matrix
包(package)。 说明
dimScale
、 rowScale
和 colScale
为对角矩阵实现 D1 %*% x %*% D2
、 D %*% x
和 x %*% D
D1
、 D2
和 D
条目d1
、d2
,和d
,分别。与显式乘积不同,这些函数在适当的情况下保留dimnames(x)
和对称性。
用法
dimScale(x, d1 = sqrt(1/diag(x, names = FALSE)), d2 = d1)
rowScale(x, d)
colScale(x, d)
参数
x |
一个矩阵,可能继承自虚拟类 |
d1 , d2 , d |
数值向量给出缩放 |
细节
dimScale(x)
(d1
和 d2
未设置)仅大致相当于 cov2cor(x)
。 cov2cor
将结果的对角线条目设置为 1(精确); dimScale
没有。
值
缩放 x
的结果,当前始终继承自虚拟类 dMatrix
。
当且仅当 x
继承时,它才继承自 triangularMatrix
。在 dimScale(x, d1, d2)
具有相同 d1
和 d2
的特殊情况下,当且仅当 x
继承时,它继承自 symmetricMatrix
。
例子
n <- 6L
(x <- forceSymmetric(matrix(1, n, n)))
dimnames(x) <- rep.int(list(letters[seq_len(n)]), 2L)
d <- seq_len(n)
(D <- Diagonal(x = d))
(scx <- dimScale(x, d)) # symmetry and 'dimnames' kept
(mmx <- D %*% x %*% D) # symmetry and 'dimnames' lost
stopifnot(identical(unname(as(scx, "generalMatrix")), mmx))
rowScale(x, d)
colScale(x, d)
作者
Mikael Jagan
也可以看看
相关用法
- R diagonalMatrix-class 对角矩阵的“diagonalMatrix”类
- R diagU2N 将三角矩阵从单位三角形变换到一般三角形并返回
- R dtrMatrix-class 三角形稠密数值矩阵
- R dgCMatrix-class 压缩、稀疏、面向列的数值矩阵
- R dsRMatrix-class 对称稀疏压缩行矩阵
- R dsCMatrix-class 数值对称稀疏(列压缩)矩阵
- R dgTMatrix-class 三元组形式的稀疏矩阵
- R ddiMatrix-class 对角数值矩阵的“ddiMatrix”类
- R dpoMatrix-class 正半定稠密(压缩|非压缩)数值矩阵
- R dmperm Dulmage-Mendelsohn 排列/分解
- R dtpMatrix-class 填充三角密集矩阵 - “dtpMatrix”
- R dtCMatrix-class 三角形(压缩)稀疏列矩阵
- R drop0 从稀疏矩阵中删除非结构零
- R dtRMatrix-class 三角形稀疏压缩行矩阵
- R denseMatrix-class 所有密集矩阵的虚拟类“denseMatrix”
- R ddenseMatrix-class 数值密集矩阵的虚拟类“ddenseMatrix”
- R dsyMatrix-class 对称密集(压缩或非压缩)数值矩阵
- R dsparseMatrix-class 数值稀疏矩阵的虚拟类“dsparseMatrix”
- R dMatrix-class (虚拟)“双”矩阵的“dMatrix”类
- R facmul-methods 乘以矩阵因式分解的因数
- R solve-methods 函数求解矩阵包中的方法
- R updown-methods 更新和降级稀疏 Cholesky 分解
- R bdiag 构建分块对角矩阵
- R printSpMatrix 灵活格式化和打印稀疏矩阵
- R symmetricMatrix-class 包矩阵中对称矩阵的虚拟类
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Scale the Rows and Columns of a Matrix。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。