virtual_mat-class: Virtual Matrices

Description Usage Arguments Value Slots Extends Creating Objects Methods Author(s) See Also Examples

Description

The virtual_mat class implements virtual matrices, which may hold any matrix-like objects. It is provided primarily to allow combining of matter matrix classes that could not be combined otherwise.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
## Instance creation
virtual_mat(data, datamode = "double", rowMaj = FALSE,
            dimnames = NULL, index = NULL, transpose = FALSE,
            chunksize = getOption("matter.default.chunksize"), ...)

# Check if an object is a virtual matrix
is.virtual(x)

# Coerce an object to a virtual matrix
as.virtual(x, ...)

## Additional methods documented below

Arguments

data

A list of matrices or vectors to combine.

datamode

A 'character' vector giving the storage mode of the data in virtual memory. Allowable values are R numeric and logical types ('logical', 'integer', 'numeric') and their C equivalents.

rowMaj

Whether the matrices in data are combined by row (TRUE) or by column (FALSE.

dimnames

The names of the virtual matrix dimensions.

index

A length-2 list of row and column indices giving a submatrix, if desired.

transpose

Should the matrix be transposed?

chunksize

The (suggested) maximum number of elements which should be accessed at once by summary functions and linear algebra. Ignored when explicitly subsetting the dataset.

x

An object to check if it is a virtual matrix or coerce to a virtual matrix.

...

Additional arguments to be passed to constructor.

Value

An object of class virtual_mat.

Slots

data:

A list of the original matrices or row/column-vectors.

datamode:

The storage mode of the accessed data when read into R. This should a 'character' vector of length one with value 'integer' or 'numeric'.

paths:

A 'character' vector of the paths to the files where the data are stored.

filemode:

The read/write mode of the files where the data are stored. This should be 'r' for read-only access, or 'rw' for read/write access.

chunksize:

The maximum number of elements which should be loaded into memory at once. Used by methods implementing summary statistics and linear algebra. Ignored when explicitly subsetting the dataset.

length:

The length of the data.

dim:

Either 'NULL' for vectors, or an integer vector of length one of more giving the maximal indices in each dimension for matrices and arrays.

names:

The names of the data elements for vectors.

dimnames:

Either 'NULL' or the names for the dimensions. If not 'NULL', then this should be a list of character vectors of the length given by 'dim' for each dimension. This is always 'NULL' for vectors.

ops:

Delayed operations to be applied on atoms.

index

A length-2 list of row and column indices giving a virtual submatrix.

transpose

TRUE if the virtual matrix should be transposed, and FALSE otherwise.

Extends

matter

Creating Objects

virtual_mat instances can be created through virtual_mat().

Methods

Standard generic methods:

x[i, j, ..., drop]:

Get or set the elements of the virtual matrix. Use drop = NULL to return a subset of the same class as the object.

cbind(x, ...), rbind(x, ...):

Combine virtual matrices by row or column.

t(x):

Transpose a matrix. This is a quick operation which only changes metadata and does not touch the data representation.

Author(s)

Kylie A. Bemis

See Also

matter

Examples

1
2
3
4
x <- matrix(runif(50), nrow=10, ncol=5)

x <- virtual_mat(list(x, x))
x[]

matter documentation built on Nov. 8, 2020, 6:15 p.m.