grooMethy | R Documentation |
grooMethy
is used to automatically detect and fix data issues including zero beta
value, missing value, and infinite value.
grooMethy( methyDat, Seq.GR = NULL, impute = TRUE, imputebyrow = TRUE, mapGenome = FALSE, verbose = FALSE )
methyDat |
A |
Seq.GR |
A |
impute |
If |
imputebyrow |
If |
mapGenome |
Logical parameter. If |
verbose |
Logical parameter. Should the function be verbose? |
For methylation data in beta value, if zero/one value exists, the logit transformation
from beta to M value will produce infinite value. Therefore, zero/one beta value
will be replaced with the smallest non-zero beta/largest non-one beta value found in the dataset.
grooMethy
can also handle missing value (i.e. NA
or NaN
) using KNN imputation (see
impute.knn
). The infinite value will be also treated as missing value for imputation.
If the original dataset is in beta value, grooMethy
will first transform it to M value
before imputation is carried out. If the imputed value is out of the original range (which is possible when
imputebyrow = FALSE
), mean value will be used instead. Warning: imputed
values for multimodal distributed CpGs (across samples) may not be correct. Please check package ENmix
to
identify the CpGs with multimodal distribution. Please note that grooMethy
is
also embedded in remp
so the user can run remp
directly without
explicitly running grooMethy
. For sequencing methylation data, please specify the genomic location of CpGs
in a GenomicRanges
object and specify it in Seq.GR
. For an example of Seq.GR
, Please
run minfi::getLocations(IlluminaHumanMethylation450kanno.ilmn12.hg19)
(the row names of the CpGs in Seq.GR
can be NULL
). The user should make sure the genome build of Seq.GR
match the build specified
in genome
parameter of function initREMP
and remprofile
(default is "hg19"
).
A RatioSet
or GenomicRatioSet
containing beta value and
M value of the methylation data.
# Get GM12878 methylation data (450k array) if (!exists("GM12878_450k")) GM12878_450k <- getGM12878("450k") GM12878_450k <- grooMethy(GM12878_450k, verbose = TRUE) # Also works if data input is a matrix grooMethy(minfi::getBeta(GM12878_450k), verbose = TRUE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.