epiage_estimation: Estimates age in skeletal muscle from calibrated DNA...

Description Usage Arguments Details Value See Also Examples

View source: R/epiage_estimation.R

Description

epiage_estimation takes as input a SummarizedExperiment-class object whose assays contain a beta-matrix called "beta". This beta-matrix should contain DNA methylation profiles in skeletal muscle that have been cleaned with clean_beta and calibrated with BMIQcalibration. epiage_estimation will use the muscle clock to estimate epigenetic age in each sample.

Usage

1
epiage_estimation(SE = NULL, version = "MEAT2.0", age_col_name = NULL)

Arguments

SE

A SummarizedExperiment-class object. The "assays" component of SE should contain a beta-matrix of DNA methylation beta-values called "beta" that has been cleaned with clean_beta and calibrated with BMIQcalibration. SE may optionally contain annotation information on the CpGs stored in "rowData" and sample phenotypes stored in "colData".

version

A character specifying which version of the epigenetic clock you would like to use. Dy default, version is set to "MEAT2.0" for the second version of the epigenetic clock. If you would like to use the original version, set version to "MEAT".

age_col_name

The name of the column in colData from SE that contains age (in years).

Details

epiage_estimation estimates epigenetic age for each sample in the input SE based on DNA methylation profiles. SE needs to be a SummarizedExperiment-class object containing a matrix of beta-values called "beta" in assays. Beta must have been calibrated to the gold standard GSE50498 using BMIQcalibration to obtain good estimates of epigenetic age.

Value

A SummarizedExperiment-class object identical to the input SE, with components added to colData. If no phenotypes were provided in the colData of the input SE, epiage_estimation will put in colData a tibble containing a single column called "DNAmage", corresponding to epigenetic age (in years) for each sample. If phenotypes were provided in the colData of the input SE, epiage_estimation will add to the existing colData three columns:

  1. DNAmage epigenetic age (in years)

  2. AAdiff the difference between predicted and actual age (in years).

  3. AAresid the residuals of a linear model (using lm) of DNAmage against actual age. AAresid is only returned if the number of samples is > 2, as AAresid cannot be calculated with < 2 samples.

See Also

BMIQ for the original BMIQ algorithm, https://genomebiology.biomedcentral.com/articles/10.1186/gb-2013-14-10-r115 for the adapted version of the BMIQ algorithm, and https://onlinelibrary.wiley.com/doi/full/10.1002/jcsm.12556 for the elastic net model of the muscle clock.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Load matrix of beta-values of two individuals from dataset GSE121961
data("GSE121961", envir = environment())
# Load phenotypes of the two individuals from dataset GSE121961
data("GSE121961_pheno", envir = environment())

# Create a SummarizedExperiment object to coordinate phenotypes and
# methylation into one object.
library(SummarizedExperiment)
GSE121961_SE <- SummarizedExperiment(assays=list(beta=GSE121961),
colData=GSE121961_pheno)

# Run clean_beta() to clean the beta-matrix
GSE121961_SE_clean <- clean_beta(SE = GSE121961_SE,
version = "MEAT2.0")

# Run BMIQcalibration() to calibrate the clean beta-matrix
GSE121961_SE_calibrated <- BMIQcalibration(SE = GSE121961_SE_clean,
version = "MEAT2.0")

# Run epiage_estimation() to obtain DNAmage + optionally AAdiff and AAresid
GSE121961_SE_epiage <- epiage_estimation(SE = GSE121961_SE_calibrated,
version = "MEAT2.0",
age_col_name = "Age")
colData(GSE121961_SE_epiage)

sarah-voisin/MEAT documentation built on Aug. 15, 2021, 3:28 p.m.