Diagonal
位於 Matrix
包(package)。 說明
構造一個正式的對角線 Matrix
,即從虛擬類 diagonalMatrix
繼承的對象(或者,如果需要,一個數學對角線 CsparseMatrix
)。
用法
Diagonal(n, x = NULL, names = FALSE)
.sparseDiagonal(n, x = NULL, uplo = "U", shape = "t", unitri = TRUE, kind, cols)
.trDiagonal(n, x = NULL, uplo = "U", unitri = TRUE, kind)
.symDiagonal(n, x = NULL, uplo = "U", kind)
參數
n |
指示(方)矩陣維度的整數。如果丟失,則使用 |
x |
列出對角線條目的值的數字或邏輯向量,根據需要回收。如果 |
names |
|
uplo |
|
shape |
|
unitri |
邏輯指示對角線上有 1 的形式三角形結果是否應該是形式單位三角形,即 |
kind |
|
cols |
可選整數向量,其值在 |
值
Diagonal()
返回一個繼承自虛擬類 diagonalMatrix
的對象。
.sparseDiagonal()
返回 Diagonal(n, x)
的 CsparseMatrix
表示,或者,如果給出 cols
,則返回 Diagonal(n, x)[, cols+1]
的表示。結果的精確類別取決於 shape
和 kind
。
.trDiagonal()
和 .symDiagonal()
分別是 .sparseDiagonal(shape = "t")
和 .sparseDiagonal(shape = "s")
的簡單包裝器。
.sparseDiagonal()
的存在主要是為了利用可用於 CsparseMatrix
的高效 C-level 方法。
例子
Diagonal(3)
Diagonal(x = 10^(3:1))
Diagonal(x = (1:4) >= 2)#-> "ldiMatrix"
## Use Diagonal() + kronecker() for "repeated-block" matrices:
M1 <- Matrix(0+0:5, 2,3)
(M <- kronecker(Diagonal(3), M1))
(S <- crossprod(Matrix(rbinom(60, size=1, prob=0.1), 10,6)))
(SI <- S + 10*.symDiagonal(6)) # sparse symmetric still
stopifnot(is(SI, "dsCMatrix"))
(I4 <- .sparseDiagonal(4, shape="t"))# now (2012-10) unitriangular
stopifnot(I4@diag == "U", all(I4 == diag(4)))
作者
Martin Maechler
也可以看看
用於從矩陣中提取對角線的通用函數diag
適用於所有“Matrices”。
bandSparse
從其非零子/超對角線構造帶狀稀疏矩陣。 band(A)
返回一個帶狀矩陣,其中包含 A
的一些子/上對角線。
Matrix
用於一般矩陣構造;此外,類 diagonalMatrix
。
相關用法
- R dtrMatrix-class 三角形稠密數值矩陣
- R facmul-methods 乘以矩陣因式分解的因數
- R solve-methods 函數求解矩陣包中的方法
- R updown-methods 更新和降級稀疏 Cholesky 分解
- R bdiag 構建分塊對角矩陣
- R printSpMatrix 靈活格式化和打印稀疏矩陣
- R symmetricMatrix-class 包矩陣中對稱矩陣的虛擬類
- R all.equal-methods 函數 all.equal() 的矩陣封裝方法
- R boolmatmult-methods 布爾算術矩陣乘積:%&% 和方法
- 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 matmult-methods 矩陣(叉)積(轉置)
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Construct a Diagonal Matrix。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。