Skip to content

xuz1/ENmix

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ENmix

Quality control and analysis tools for Illumina DNA methylation BeadChip

Introduction

The Bioconductor R package ENmix package provides a set of quality control, preprocessing/correction and data analysis tools for Illumina Methylation Beadchips. It includes functions to read in raw idat data, background correction, dye bias correction, probe-type bias adjustment, along with a number of additional tools. These functions can be used to remove unwanted experimental noise and thus to improve accuracy and reproducibility of methylation measures. ENmix functions are flexible and transparent. Users have option to choose a single pipeline command to finish all data pre-processing steps (including quality control, background correction, dye-bias adjustment, between-array normalization and probe-type bias correction) or to use individual functions sequentially to perform data pre-processing in a more customized manner. In addition the ENmix package has selectable complementary functions for efficient data visualization (such as QC plots, data distribution plot, manhattan plot and Q-Q plot), quality control (identifing and filtering low quality data points, samples, probes, and outliers, along with imputation of missing values), identification of probes with multimodal distributions due to SNPs or other factors, exploration of data variance structure using principal component regression analysis plot, preparation of experimental factors related surrogate control variables to be adjusted in downstream statistical analysis, an efficient algorithm oxBS-MLE to estimate 5-methylcytosine and 5-hydroxymethylcytosine level; estimation of celltype proporitons; methlation age calculation and differentially methylated region (DMR) analysis.

Most ENmix package can also support the data structure used by several other related R packages, such as minfi, wateRmelon and ChAMP, providing straightforward integration of ENmix-corrected datasets for subsequent data analysis.

ENmix readidat function does not depend on array annotation R packages. It can directly read in Illuminal manifest file, which makes it easier to work with newer array, such as MethylationEPICv2.0 and mouse Beadchip.

The software is designed to support large scale data analysis, and provides multi-processor parallel computing options for most functions.

List of functions

Data acquisition

  • `readidat()`: Read idat files into R
  • `readmanifest()`: Read array manifest file into R

Quality control

  • `QCinfo()`: Extract and visualize QC information
  • `plotCtrl()`: Generate internal control plots
  • `getCGinfo()`: Extract CpG probe annotation information
  • `calcdetP()`: Compute detection P values
  • `qcfilter()`: Remove low quality values, samples or CpGs; remove outlier samples and perform imputation
  • `nmode()`: Identify "gap" probes, i.e. those with multimodal distribution from underlying caused by underlying SNPs
  • `dupicc()`: Calculate Introclass correlation coefficient (ICC) using data for duplicates
  • `freqpoly()`: Frequency polygon plot for single variable
  • `multifreqpoly()`: Frequency polygon plot for multiple variables

Preprocessing

  • `mpreprocess()`: Preprocessing pipeline
  • `preprocessENmix()`: ENmix background correction and dye bias correction
  • `relic()`: RELIC dye bias correction
  • `norm.quantile()`: Quantile normalization
  • `rcp()`: RCP probe design type bias correction

Differential methylated region (DMR) analysis

  • `ipdmr()`: ipDMR differentially methylated region analysis
  • `combp()`: Combp differentially methylated region analysis

Other functions

  • `oxBS.MLE()`: MLE estimates of 5-methylcytosine (5mC) and 5-hydroxymethylcytosine (5hmC)
  • `estimateCellProp()`: Estimate white blood cell type proportions
  • `methyAge()`: Calculate methylation age
  • `methscore()`: calculate various methylation predictors, including DNA methylation age, exposures and plasma protein levels.
  • `predSex()`: Estimate sample sex
  • `ctrlsva()`: Derive surrogate variables to control for experimental confounding using non-negative internal control probes
  • `pcrplot()`: Principal component regression plot
  • `mhtplot()`: P value manhattan plot
  • `p.qqplot()`: P value Q-Q plot
  • `B2M()`: Convert Beta value to M value
  • `M2B()`: Convert M value to Beta value

About

This is a read-only mirror of the Bioconductor SVN repository. Package Homepage: http://bioconductor.org/packages/devel/bioc/html/ENmix.html Bug Reports: https://support.bioconductor.org/p/new/post/?tag_val=ENmix.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • R 100.0%