Learn R Programming

DSS (version 2.12.0)

callDML: Function to detect differntially methylated loci (DML) for two group comparisons of bisulfite sequencing (BS-seq) data.

Description

This function takes the results from DML testing procedure ('DMLtest' function) and calls DMLs. Regions will CpG sites being statistically significant are deemed as DMLs.

Usage

callDML(DMLresult, delta=0.1, p.threshold=1e-5)

Arguments

DMLresult
A data frame representing the results for DML detection. This should be the result returned from 'DMLtest' function.
delta
A threshold for defining DML. In DML testing procedure, hypothesis test that the two groups means are equalis is conducted at each CpG site. Here if 'delta' is specified, the function will compute the posterior probability that the difference of the means are greater than delta,and then call DML based on that.
p.threshold
When delta is not specified, this is the threshold of p-values for defining DML, e.g. Loci with p-values less than this threshold will be deemed DMLs. When delta is specified, CpG sites with posterior probability greater than 1-p.threshold are deemed DML.

Value

statistical significance. The columns are
chr
Chromosome number.
pos
Genomic coordinates.
mu1, mu2
Mean methylations of two groups.
diff
Difference of mean methylations of two groups.
diff.se
Standard error of the methylation difference.
stat
Wald statistics.
pval
P-values. This is obtained from normal distribution.
fdr
False discovery rate.
chr
Chromosome number.
pos
Genomic coordinates.
meanMethy1, meanMethy2
Average methylation levels in two conditions.
diff.Methy
The difference in the methylation levels between two conditions.
If delta>0, there is an extra column postprob.overThreshold reprsenting the posterior probability of the difference in methylation greater than delta.

See Also

DMLtest, callDMR

Examples

Run this code
## Not run: 
# require(bsseq)
# 
# ## first read in methylation data.
# path <- file.path(system.file(package="DSS"), "extdata")
# dat1.1 <- read.table(file.path(path, "cond1_1.txt"), header=TRUE)
# dat1.2 <- read.table(file.path(path, "cond1_2.txt"), header=TRUE)
# dat2.1 <- read.table(file.path(path, "cond2_1.txt"), header=TRUE)
# dat2.2 <- read.table(file.path(path, "cond2_2.txt"), header=TRUE)
# 
# ## make BSseq objects
# BSobj <- makeBSseqData( list(dat1.1, dat1.2, dat2.1, dat2.2),
#   c("C1","C2", "N1", "N2") )
# 
# ##  DML test
# dmlTest <- DMLtest(BSobj, group1=c("C1", "C2"), group2=c("N1","N2"))
# 
# ## call DML
# dmls <- callDML(dmlTest)
# head(dmls)
# 
# ## call DML with a threshold
# dmls2 <- callDML(dmlTest, delta=0.2)
# head(dmls2)
# 
# ## For whole-genome BS-seq data, perform DML test with smoothing
# require(bsseqData)
# data(BS.cancer.ex)
# ## takea smallportionof data and test
# BSobj <- BS.cancer.ex[10000:15000,]
# dmlTest <- DMLtest(BSobj, group1=c("C1", "C2", "C3"), group2=c("N1","N2","N3"),
#    smoothing=TRUE, smoothing.span=500)
# dmls <- callDML(dmlTest)
# head(dmls)
# 
# 
# ## End(Not run)

Run the code above in your browser using DataLab