dgTMatrix-class
位於 Matrix
包(package)。 說明
"dgTMatrix"
類是存儲為(可能冗餘)三元組的稀疏矩陣類。內部表示根本不是唯一的,與類 dgCMatrix
的表示相反。
類中的對象
可以通過 new("dgTMatrix", ...)
形式的調用來創建對象,但更常見的是通過 spMatrix()
或 sparseMatrix(*, repr = "T")
來創建。
插槽
i
:-
integer
以 0 為基數的非零條目的行索引,即必須位於0:(nrow(.)-1)
中。 j
:-
integer
非零條目的列索引。必須與槽i
的長度相同,並且也從 0 開始,即在0:(ncol(.)-1)
中。 x
:-
numeric
向量 - 位置(i,j)
處的(非零)條目。必須與插槽i
的長度相同。如果索引對出現多次,則將槽x
的相應值相加以形成矩陣的元素。 Dim
:-
"integer"
類的對象,長度為 2 - 矩陣的維度。
方法
- +
-
signature(e1 = "dgTMatrix", e2 = "dgTMatrix")
- 圖片
-
signature(x = "dgTMatrix")
:使用levelplot
函數繪製x
的圖像 - t
-
signature(x = "dgTMatrix")
:返回x
的轉置
注意
三元組矩陣是構造稀疏矩陣的一種便捷形式,之後可以將它們強製轉換為 dgCMatrix
對象。
請注意,"dgTMatrix"
(和其他"TsparseMatrix"
類)的new(.)
和spMatrix
構造函數都隱式添加屬於相同 對的 。
然而,這意味著矩陣通常可以以多種可能的 "TsparseMatrix"
表示形式存儲。使用uniqTsparse()
以確保此類矩陣的內部表示的唯一性。
例子
m <- Matrix(0+1:28, nrow = 4)
m[-3,c(2,4:5,7)] <- m[ 3, 1:4] <- m[1:3, 6] <- 0
(mT <- as(m, "TsparseMatrix"))
str(mT)
mT[1,]
mT[4, drop = FALSE]
stopifnot(identical(mT[lower.tri(mT)],
m [lower.tri(m) ]))
mT[lower.tri(mT,diag=TRUE)] <- 0
mT
## Triplet representation with repeated (i,j) entries
## *adds* the corresponding x's:
T2 <- new("dgTMatrix",
i = as.integer(c(1,1,0,3,3)),
j = as.integer(c(2,2,4,0,0)), x=10*1:5, Dim=4:5)
str(T2) # contains (i,j,x) slots exactly as above, but
T2 ## has only three non-zero entries, as for repeated (i,j)'s,
## the corresponding x's are "implicitly" added
stopifnot(nnzero(T2) == 3)
也可以看看
類 dgCMatrix
或超類 dsparseMatrix
和 TsparseMatrix
; uniqTsparse
。
相關用法
- R dgCMatrix-class 壓縮、稀疏、麵向列的數值矩陣
- R dtrMatrix-class 三角形稠密數值矩陣
- R diagonalMatrix-class 對角矩陣的“diagonalMatrix”類
- R dsRMatrix-class 對稱稀疏壓縮行矩陣
- R dsCMatrix-class 數值對稱稀疏(列壓縮)矩陣
- R diagU2N 將三角矩陣從單位三角形變換到一般三角形並返回
- R dimScale 縮放矩陣的行和列
- 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大神的英文原創作品 Sparse matrices in triplet form。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。