BMIQ: Beta-Mixture Quantile (BMIQ) Normalisation method for...

Description Usage Arguments Details Value Author(s) References Examples

View source: R/BMIQ_1.1.R

Description

BMIQ is an intra-sample normalisation procedure, correcting the bias of type-2 probe values. BMIQ uses a 3-step procedure: (i) fitting of a 3-state beta mixture model, (ii) transformation of state-membership probabilities of type2 probes into quantiles of the type1 distribution, and (iii) a conformal transformation for the hemi-methylated probes. Exact details can be found in the reference below.

Usage

1
2
3
4
BMIQ(beta.v, design.v, nL = 3, doH = TRUE, nfit = 50000, th1.v = c(0.2, 0.75), th2.v = NULL, niter = 5, tol = 0.001, plots = TRUE, sampleID = 1, pri=TRUE)
## S4 method for signature 'MethyLumiSet'
BMIQ(beta.v, nL=3, doH=TRUE, nfit=5000, th1.v=c(0.2,0.75), th2.v=NULL, niter=5, tol=0.001, plots=FALSE,  pri=FALSE ) 
CheckBMIQ(beta.v, design.v, pnbeta.v)

Arguments

beta.v

vector consisting of beta-values for a given sample, or a MethyLumiSet or MethylSet containing multiple samples. For the MethyLumiSet and MethylSet methods, this is the only required argument, and the function will be run on each sample.

design.v

corresponding vector specifying probe design type (1=type1,2=type2). This must be of the same length as beta.v and in the same order.

nL

number of states in beta mixture model. 3 by default. At present BMIQ only works for nL=3.

doH

perform normalisation for hemimethylated type2 probes. These are normalised using an empirical conformal transformation and also includes the left-tailed type2 methylated probes since these are not well described by a beta distribution. By default TRUE.

nfit

number of probes of a given design type to use for the fitting. Default is 50000. Smaller values (~10000) will make BMIQ run faster at the expense of a small loss in accuracy. For most applications, 5000 or 10000 is ok.

th1.v

thresholds used for the initialisation of the EM-algorithm, they should represent buest guesses for calling type1 probes hemi-methylated and methylated, and will be refined by the EM algorithm. Default values work well in most cases.

th2.v

thresholds used for the initialisation of the EM-algorithm, they should represent buest guesses for calling type2 probes hemi-methylated and methylated, and will be refined by the EM algorithm. By default this is null, and the thresholds are estimated based on th1.v and a modified PBC correction method.

niter

maximum number of EM iterations to do. This number should be large enough to yield good fits to the type1 distribution. By default 5.

tol

tolerance convergence threshold for EM algorithm. By default 0.001.

plots

logical specifying whether to plot the fits and normalised profiles out. By default TRUE.

sampleID

the ID of the sample being normalised.

pri

logical: print verbose progress information?

pnbeta.v

BMIQ normalised profile.

Details

Full details can be found in the reference below. Note: these functions require the RPMM package, not currently a dependency of the wateRmelon package.

Value

Default method: A list with following entries:

nbeta

the normalised beta-profile for the sample

class1

the assigned methylation state of type1 probes

class2

the assigned methylation state of type2 probes

av1

the mean beta-values for the nL states for type1 probes

av2

the mean beta-values for the nL states for type2 probes

hf

the estimated "Hubble" dilation factor used in the normalisation of hemi-methylated probes

th1

estimated thresholds for calling unmethylated and methylated type1 probes

th2

estimated thresholds for calling unmethylated and methylated type2 probes

MethyLumiSet method: A methyLumiSet object

Author(s)

Andrew Teschendorff, MethyLumiSet method by Leo Schalkwyk Leonard.Schalkwyk@kcl.ac.uk

References

Teschendorff AE, Marabita F, Lechner M, Bartlett T, Tegner J, Gomez-Cabrero D, Beck S. A Beta-Mixture Quantile Normalisation method for correcting probe design bias in Illumina Infinium 450k DNA methylation data. Bioinformatics. 2012 Nov 21.

Examples

1
2
3
# library(RPMM)
# data(melon)
# BMIQ(melon,nfit=100)

wateRmelon documentation built on Nov. 8, 2020, 7:47 p.m.