Matrix-class 位於 Matrix 包(package)。 說明
Matrix 類是Matrix 包中所有實際類所包含的類。這是一個“virtual” 類。
插槽
Dim-
長度為 2 的整數向量,給出矩陣的維度。
Dimnames-
長度為 2 的列表。每個元素必須是
NULL或長度等於Dim的相應元素的字符向量。
方法
- 行列式
-
signature(x = "Matrix", logarithm = "missing"):和 - 行列式
-
signature(x = "Matrix", logarithm = "logical"):計算x的 ( ) 行列式。選擇的方法取決於x的實際 Matrix 類。請注意,det也適用於我們的所有矩陣,調用適當的determinant()方法。Matrix::det是base::det的精確副本,但位於正確的命名空間中,因此調用determinant()的 S4 感知版本。)。 - 差異
-
signature(x = "Matrix"):與傳統矩陣的diff()一樣,即將diff()應用於每一列。 - dim
-
signature(x = "Matrix"):提取矩陣維度dim。 - 暗淡<-
-
signature(x = "Matrix", value = "ANY"):其中value是長度為 2 的整數。允許重塑 Matrix 對象,但僅限於prod(value) == prod(dim(x))時。 - 暗名
-
signature(x = "Matrix"):提取dimnames。 - 暗名<-
-
signature(x = "Matrix", value = "list"):將dimnames設置為長度為2的list,參見dimnames<-。 - 長度
-
signature(x = "Matrix"):簡單地定義為prod(dim(x))(因此模式為"double")。 - 展示
-
signature(object = "Matrix"):printing 的show方法。有關打印稀疏矩陣的信息,請參閱printSpMatrix。 - 圖片
-
signature(object = "Matrix"):使用lattice包中的levelplot()繪製矩陣條目的image。 - 頭
-
signature(object = "Matrix"):僅返回“head”,即前幾行。 - 尾巴
-
signature(object = "Matrix"):僅返回“tail”,即相應矩陣的最後幾行。
- as.matrix,as.array
-
signature(x = "Matrix"):與as(x, "matrix")相同;另請參閱下麵的注釋。 - as.vector
-
signature(x = "Matrix", mode = "missing"):as.vector(m)應該與as.vector(as(m, "matrix"))相同,對於某些子類實現更有效。 - 作為(x,"vector"),作為(x,"numeric")
-
等等,類似地。
- 強製
-
signature(from = "ANY", to = "Matrix"):這依賴於from的正確as.matrix()方法。
還有更多方法(概念上應該)適用於所有 "Matrix" 對象,例如 colSums 、 rowMeans 。即使 base 函數也可以自動工作(如果它們首先在其主要參數上調用 as.matrix() ),例如 apply 、 eigen 、 svd 或 kappa 都通過強製到 “traditional” 來工作(密集)matrix 。
注意
在 base 命名空間中加載 Matrix 命名空間 “overloads” as.matrix 和 as.array 相當於 function(x) as(x, "matrix") 。因此,當 m 繼承自 "Matrix" 類時,as.matrix(m) 或 as.array(m) 將正常工作 — 也適用於包 base 和其他包中的函數。例如,apply 或 outer 因此可以應用於 "Matrix" 矩陣。
例子
slotNames("Matrix")
cl <- getClass("Matrix")
names(cl@subclasses) # more than 40 ..
showClass("Matrix")#> output with slots and all subclasses
(M <- Matrix(c(0,1,0,0), 6, 4))
dim(M)
diag(M)
cm <- M[1:4,] + 10*Diagonal(4)
diff(M)
## can reshape it even :
dim(M) <- c(2, 12)
M
stopifnot(identical(M, Matrix(c(0,1,0,0), 2,12)),
all.equal(det(cm),
determinant(as(cm,"matrix"), log=FALSE)$modulus,
check.attributes=FALSE))
作者
Douglas Bates bates@stat.wisc.edu and Martin Maechler
也可以看看
類 dgeMatrix 、 dgCMatrix 和函數 Matrix 用於構造(和示例)。
方法,例如 kronecker 。
相關用法
- R Matrix-notyet 虛擬課堂尚未真正實施和使用
- R Matrix-deprecated 包矩陣中已棄用的函數
- R Matrix-defunct 包矩陣中的失效函數
- R MatrixClass 類的矩陣(超級)類
- R Matrix 構建分類矩陣
- R MatrixFactorization-class 矩陣分解的虛擬類“MatrixFactorization”
- 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-devel大神的英文原創作品 Virtual Class "Matrix" of Matrices。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
