modelMatrix-class.RdThe class "modelMatrix" and notably its subclass
"dsparseModelMatrix" are used to encode additional information,
analogously to what the standard R function
model.matrix() returns.
Only "dsparseModelMatrix" and "ddenseModelMatrix" are
“actual” (aka non-virtual) classes. For these,
objects can be created by calls of the form
new("dsparseModelMatrix", x, assign, contrast), where x
is a dgCMatrix classed object.
The "modelMatrix" mother class contains
Matrix (pkg Matrix) plus two extra slots,
assign:"integer" vector of length
ncol(.), coding the variables which make up the
matrix columns, see model.matrix.
contrasts:a named list of
contrasts, as in model.matrix().
Dim:integer vector of length two with the matrix dimensions.
Dimnames:list of length two, the
dimnames(.) of the matrix.
whereas the (current only) actual classes "d*ModelMatrix",
have an at least an additional (numeric slot "x".
E.g., "dsparseModelMatrix" has the additional slots
"dsparseModelMatrix" extends class "dgCMatrix" directly,"ddenseModelMatrix" extends class "dgeMatrix" directly.
signature(object = "modelMatrix"):
show(.) the matrix, but also the assign and
contrasts slots.
signature(x = "modelMatrix"): as show(),
however (via ...) allowing to pass further arguments for
printing the matrix.
sparse.model.matrix (pkg Matrix) will return a
"dgCMatrix" object.
model.Matrix is a simple wrapper around the traditional
model.matrix and returns a "ddenseModelMatrix" object.
showClass("modelMatrix")
#> Virtual Class "modelMatrix" [package "MatrixModels"]
#>
#> Slots:
#>
#> Name: assign contrasts Dim Dimnames
#> Class: integer list integer list
#>
#> Extends: "Matrix"
#>
#> Known Subclasses:
#> Class "sparseModelMatrix", directly
#> Class "denseModelMatrix", directly
#> Class "ddenseModelMatrix", by class "denseModelMatrix", distance 2
#> Class "dsparseModelMatrix", by class "sparseModelMatrix", distance 2
showClass("dsparseModelMatrix")
#> Class "dsparseModelMatrix" [package "MatrixModels"]
#>
#> Slots:
#>
#> Name: i p Dim Dimnames x factors assign
#> Class: integer integer integer list numeric list integer
#>
#> Name: contrasts
#> Class: list
#>
#> Extends:
#> Class "dgCMatrix", directly
#> Class "sparseModelMatrix", directly
#> Class "CsparseMatrix", by class "dgCMatrix", distance 2
#> Class "dsparseMatrix", by class "dgCMatrix", distance 2
#> Class "generalMatrix", by class "dgCMatrix", distance 2
#> Class "modelMatrix", by class "sparseModelMatrix", distance 2
#> Class "dMatrix", by class "dgCMatrix", distance 3
#> Class "sparseMatrix", by class "dgCMatrix", distance 3
#> Class "Matrix", by class "dgCMatrix", distance 3
## see example(model.Matrix)