getG_symDMatrix {BGData} | R Documentation |
Computes a Very Large Genomic Relationship Matrix
Description
Computes a positive semi-definite symmetric genomic relation matrix G=XX'
offering options for centering and scaling the columns of X
beforehand.
Usage
getG_symDMatrix(X, center = TRUE, scale = TRUE, impute = TRUE, scaleG = TRUE,
minVar = 1e-05, blockSize = 5000L,
folderOut = paste0("symDMatrix_", randomString()), vmode = "double",
i = seq_len(nrow(X)), j = seq_len(ncol(X)), chunkSize = 5000L,
nCores = getOption("mc.cores", 2L), verbose = FALSE)
Arguments
X |
A matrix-like object, typically the genotypes of a |
center |
Either a logical value or a numeric vector of length equal to the
number of columns of |
scale |
Either a logical value or a numeric vector of length equal to the
number of columns of |
impute |
Indicates whether missing values should be imputed. Defaults to
|
scaleG |
TRUE/FALSE whether xx' must be scaled. |
minVar |
Columns with variance lower than this value will not be used in the
computation (only if |
blockSize |
The number of rows and columns of each block. If |
folderOut |
The path to the folder where to save the |
vmode |
vmode of |
i |
Indicates which rows of |
j |
Indicates which columns of |
chunkSize |
The number of columns of |
nCores |
The number of cores (passed to |
verbose |
Whether progress updates will be posted. Defaults to |
Details
Even very large genomic relationship matrices are supported by partitioning
X
into blocks and calling getG
on these blocks. This function
performs the block computations sequentially, which may be slow. In an HPC
environment, performance can be improved by manually distributing these
operations to different nodes.
Value
A symDMatrix
object.
See Also
multi-level-parallelism
for more information on multi-level
parallelism. symDMatrix-class
and
BGData-class
for more information on the BGData
class.
getG
to learn more about the underlying method.