sparseMatrix-class 位于 Matrix 包(package)。 说明
所有稀疏矩阵的虚拟母类
插槽
Dim:-
"integer"类的对象(矩阵的维度)必须是具有两个非负值的整数向量。 Dimnames:-
长度为 2 的列表 - 从类
Matrix继承,请参阅Matrix。
扩展
直接类 "Matrix" 。
方法
- 展示
-
(object = "sparseMatrix"):稀疏矩阵的show方法使用printSpMatrix()将“structural”零打印为".",这允许进一步定制。 - 打印
-
signature(x = "sparseMatrix"), ....
print默认情况下稀疏矩阵的方法与show()但可以使用额外的可选参数进行调用,请参阅printSpMatrix(). - 格式
-
signature(x = "sparseMatrix"), ....
format稀疏矩阵的方法,参见formatSpMatrix()有关额外可选参数等详细信息。 - 概括
-
(object = "sparseMatrix", uniqT=FALSE):返回 S3 类"sparseSummary"的对象,它本质上是一个data.frame,其中包含(i,j,x)列(或者只是(i,j)对于nsparseMatrix类对象)以及存储的(通常非零)条目。print方法类似于 Matlab 打印稀疏矩阵的方式,以及 MatrixMarket 格式,请参阅writeMM。 - 绑定2
-
(x = *, y = *):将矩阵按列绑定在一起的几种方法,请参阅基础cbind和rbind职能。
请注意,即使一个参数密集且大于稀疏参数,结果通常也是稀疏的。 - 绑定2
-
(x = *, y = *):将矩阵按行绑定在一起,请参见上面的cbind2。 - 行列式
-
(x = "sparseMatrix", logarithm=TRUE):稀疏矩阵的determinant()方法通常通过Cholesky或lu分解进行工作。 - 诊断
-
(x = "sparseMatrix"):提取稀疏矩阵的对角线。 - 暗淡<-
-
signature(x = "sparseMatrix", value = "ANY"):允许将稀疏矩阵重塑为具有相同条目但维度不同的稀疏矩阵。value的长度必须为 2 并满足prod(value) == prod(dim(x))。 - 强制
-
signature(from = "factor", to = "sparseMatrix"):将因子强制转换为"sparseMatrix"会生成存储为类"dgCMatrix"对象的指标行矩阵。要获得表示因子和数字协变量交互作用的列,请将结果的"x"槽替换为数字协变量,然后进行转置。因子中的缺失值 (NA) 将转换为所有0的列。
另请参阅 colSums 、 norm 等,了解具有单独帮助页面的方法。
注意
在乘法运算的方法选择中(即 %*% 和 crossprod 的双参数形式),sparseMatrix 类优先,因为如果一个操作数是稀疏矩阵,另一个操作数是任何类型的稠密矩阵,则稠密矩阵类优先矩阵被强制为 dgeMatrix 并使用适当的稀疏矩阵方法。
例子
showClass("sparseMatrix") ## and look at the help() of its subclasses
M <- Matrix(0, 10000, 100)
M[1,1] <- M[2,3] <- 3.14
M ## show(.) method suppresses printing of the majority of rows
data(CAex, package = "Matrix")
dim(CAex) # 72 x 72 matrix
determinant(CAex) # works via sparse lu(.)
## factor -> t( <sparse design matrix> ) :
(fact <- gl(5, 3, 30, labels = LETTERS[1:5]))
(Xt <- as(fact, "sparseMatrix")) # indicator rows
## missing values --> all-0 columns:
f.mis <- fact
i.mis <- c(3:5, 17)
is.na(f.mis) <- i.mis
Xt != (X. <- as(f.mis, "sparseMatrix")) # differ only in columns 3:5,17
stopifnot(all(X.[,i.mis] == 0), all(Xt[,-i.mis] == X.[,-i.mis]))
也可以看看
sparseMatrix 及其参考,例如 xtabs(*, sparse=TRUE) 或 sparse.model.matrix() ,用于构造稀疏矩阵。
T2graph 用于将 "graph" 对象(包 graph )与稀疏矩阵相互转换。
相关用法
- R sparseMatrix 从非零项构建一般稀疏矩阵
- R sparseQR-class 稀疏 QR 分解
- R sparse.model.matrix 构造稀疏设计/模型矩阵
- R sparseVector-class 稀疏向量类
- R sparseLU-class 稀疏 LU 分解
- R sparseVector 从非零条目构造稀疏向量
- R spMatrix 三元组的稀疏矩阵构造函数
- R solve-methods 函数求解矩阵包中的方法
- R symmetricMatrix-class 包矩阵中对称矩阵的虚拟类
- R symmpart-methods 矩阵的对称部分和偏斜(对称)部分
- R dtrMatrix-class 三角形稠密数值矩阵
- R facmul-methods 乘以矩阵因式分解的因数
- R updown-methods 更新和降级稀疏 Cholesky 分解
- R bdiag 构建分块对角矩阵
- R printSpMatrix 灵活格式化和打印稀疏矩阵
- R all.equal-methods 函数 all.equal() 的矩阵封装方法
- R boolmatmult-methods 布尔算术矩阵乘积:%&% 和方法
- R ltrMatrix-class 三角密集逻辑矩阵
- R Hilbert 生成希尔伯特矩阵
- R nearPD 最近正定矩阵
- R lsyMatrix-class 对称密集逻辑矩阵
- R CHMfactor-class 稀疏 Cholesky 分解
- R dgCMatrix-class 压缩、稀疏、面向列的数值矩阵
- R Cholesky-methods Cholesky 分解方法
- R Subassign-methods “[<-”的方法 - 分配给“矩阵”的子集
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Virtual Class "sparseMatrix" — Mother of Sparse Matrices。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
