R語言
diagU2N
位於 Matrix
包(package)。 說明
將三角形矩陣 x
,即 class
triangularMatrix
,從(內部!)單位三角形 (“unitriangular”) 轉換為 “general” 三角形 ( diagU2N(x)
) 或返回 ( diagN2U(x)
)。請注意,後者 diagN2U(x)
也會在 diag(x)
不全為 1 的情況下將對角線設置為 1。
.diagU2N(x)
和 .diagN2U(x)
在不檢查的情況下假設 x
是具有合適的 diag
插槽的 triangularMatrix
(分別為 "U"
和 "N"
),因此應謹慎使用它們。
用法
diagU2N(x, cl = getClassDef(class(x)), checkDense = FALSE)
diagN2U(x, cl = getClassDef(class(x)), checkDense = FALSE)
.diagU2N(x, cl = getClassDef(class(x)), checkDense = FALSE)
.diagN2U(x, cl = getClassDef(class(x)), checkDense = FALSE)
參數
x |
|
cl |
(可選,僅用於加速:) |
checkDense |
邏輯表明是否應該考慮稠密(參見 |
細節
帶有 diag
槽 "U"
的單位三角矩陣的概念源於 LAPACK。
值
相同 class
但具有不同 diag
槽的三角矩陣。對於 diagU2N
(語義上)與 x
具有相同條目的情況,而在 diagN2U(x)
中,非對角線條目保持不變,並且對角線設置為所有 1
,即使以前不是。
注意
此類內部存儲詳細信息很少與用戶相關。因此,這些函數實際上是相當內部的實用程序。
例子
(T <- Diagonal(7) + triu(Matrix(rpois(49, 1/4), 7, 7), k = 1))
(uT <- diagN2U(T)) # "unitriangular"
(t.u <- diagN2U(10*T))# changes the diagonal!
stopifnot(all(T == uT), diag(t.u) == 1,
identical(T, diagU2N(uT)))
T[upper.tri(T)] <- 5 # still "dtC"
T <- diagN2U(as(T,"triangularMatrix"))
dT <- as(T, "denseMatrix") # (unitriangular)
dT.n <- diagU2N(dT, checkDense = TRUE)
sT.n <- diagU2N(dT)
stopifnot(is(dT.n, "denseMatrix"), is(sT.n, "sparseMatrix"),
dT@diag == "U", dT.n@diag == "N", sT.n@diag == "N",
all(dT == dT.n), all(dT == sT.n))
也可以看看
相關用法
- R diagonalMatrix-class 對角矩陣的“diagonalMatrix”類
- R dimScale 縮放矩陣的行和列
- 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大神的英文原創作品 Transform Triangular Matrices from Unit Triangular to General Triangular and Back。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。