Description Usage Arguments Details Value Author(s) References See Also Examples
Fit MOSAiCS-HMM model.
1 2 3 4 5 6 | mosaicsFitHMM( object, ... )
## S4 method for signature 'MosaicsFit'
mosaicsFitHMM( object, signalModel="2S", binsize=NA,
init="mosaics", init.FDR=0.05,
init.maxgap=200, init.minsize=50, init.thres=10, init.piMat=as.matrix(NA),
max.iter=100, eps=1e-20, parallel=FALSE, nCore=8 )
|
object |
Object of class |
signalModel |
Signal model. Possible values are "1S" (one-signal-component model) and "2S" (two-signal-component model). Default is "2S". |
binsize |
Size of each bin. Value should be positive integer.
If |
init |
Approach to initialize MOSAiCS-HMM. Possible values are |
init.FDR |
Parameter for the MOSAiCS-HMM initialization. False discovery rate. Default is 0.05. Related only if |
init.maxgap |
Parameter for the MOSAiCS-HMM initialization. Initial nearby peaks are merged if the distance (in bp) between them is less than |
init.minsize |
Parameter for the MOSAiCS-HMM initialization. An initial peak is removed if its width is narrower than |
init.thres |
Parameter for the MOSAiCS-HMM initialization. A bin within initial peak is removed if its ChIP tag counts are less than |
init.piMat |
Initial value for transition matrix. The first rows/columns correspond to the non-binding state while the second rows/columns correspond to the binding state. Related only if |
max.iter |
Number of iterations for fitting MOSAiCS-HMM. Default is 100. |
eps |
Criterion to stop iterations for fitting MOSAiCS-HMM. Default is 1e-20. |
parallel |
Utilize multiple CPUs for parallel computing
using |
nCore |
Number of CPUs when parallel computing is utilized. |
... |
Other parameters to be passed through to generic |
mosaicsFitHMM
and mosaicsPeakHMM
are developed to identify broad peaks such as histone modifications,
using Hidden Markov Model (HMM) approach, as proposed in Chung et al. (2014).
If you are interested in identifying narrow peaks such as transcription factor binding sites,
please use mosaicsPeak
instead of mosaicsFitHMM
and mosaicsPeakHMM
.
When peaks are called, proper signal model needs to be specified.
The optimal choice for the number of signal components depends on the characteristics of ChIP-seq data.
In order to support users in the choice of optimal signal model,
Bayesian Information Criterion (BIC) values and Goodness of Fit (GOF) plot are provided
for the fitted MOSAiCS model.
BIC values and GOF plot can be obtained by applying show
and plot
methods,
respectively, to the MosaicsFit
class object, which is a fitted MOSAiCS model.
init.FDR
, init.maxgap
, init.minsize
, and init.thres
are the parameters for MOSAiCS-HMM initialization when MOSAiCS peak calling results are used for initialization (init="mosaics"
). If user specifies transition matrix (init="specify"
), only init.piMat
is used for initialization.
If you use a bin size shorter than the average fragment length of the experiment,
we recommend to set init.maxgap
to the average fragment length
and init.minsize
to the bin size.
If you set the bin size to the average fragment length or if bin size is larger than the average fragment length,
set init.maxgap
to the average fragment length and
init.minsize
to a value smaller than the average fragment length. See the vignette for further details.
Parallel computing can be utilized for faster computing
if parallel=TRUE
and parallel
package is loaded.
nCore
determines number of CPUs used for parallel computing.
Construct MosaicsHMM
class object.
Dongjun Chung, Pei Fen Kuan, Rene Welch, Sunduz Keles
Kuan, PF, D Chung, G Pan, JA Thomson, R Stewart, and S Keles (2011), "A Statistical Framework for the Analysis of ChIP-Seq Data", Journal of the American Statistical Association, Vol. 106, pp. 891-903.
Chung, D, Zhang Q, and Keles S (2014), "MOSAiCS-HMM: A model-based approach for detecting regions of histone modifications from ChIP-seq data", Datta S and Nettleton D (eds.), Statistical Analysis of Next Generation Sequencing Data, Springer.
mosaicsFit
, mosaicsPeakHMM
,
MosaicsFit
, MosaicsHMM
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | ## Not run:
library(mosaicsExample)
constructBins( infile=system.file( file.path("extdata","wgEncodeBroadHistoneGm12878H3k4me3StdAlnRep1_chr22_sorted.bam"), package="mosaicsExample"),
fileFormat="bam", outfileLoc="~/",
byChr=FALSE, useChrfile=FALSE, chrfile=NULL, excludeChr=NULL,
PET=FALSE, fragLen=200, binSize=200, capping=0 )
constructBins( infile=system.file( file.path("extdata","wgEncodeBroadHistoneGm12878ControlStdAlnRep1_chr22_sorted.bam"), package="mosaicsExample"),
fileFormat="bam", outfileLoc="~/",
byChr=FALSE, useChrfile=FALSE, chrfile=NULL, excludeChr=NULL,
PET=FALSE, fragLen=200, binSize=200, capping=0 )
binHM <- readBins( type=c("chip","input"),
fileName=c( "~/wgEncodeBroadHistoneGm12878H3k4me3StdAlnRep1_chr22_sorted.bam_fragL200_bin200.txt",
"~/wgEncodeBroadHistoneGm12878ControlStdAlnRep1_chr22_sorted.bam_fragL200_bin200.txt" ) )
binHM
plot(binHM)
plot( binHM, plotType="input" )
fitHM <- mosaicsFit( binHM, analysisType="IO", bgEst="rMOM" )
fitHM
plot(fitHM)
hmmHM <- mosaicsFitHMM( fitHM, signalModel = "2S",
init="mosaics", init.FDR = 0.05, parallel=TRUE, nCore=8 )
hmmHM
plot(hmmHM)
peakHM <- mosaicsPeakHMM( hmmHM, FDR = 0.05, decoding="posterior",
thres=10, parallel=TRUE, nCore=8 )
peakHM <- extractReads( peakHM,
chipFile=system.file( file.path("extdata","wgEncodeBroadHistoneGm12878H3k4me3StdAlnRep1_chr22_sorted.bam"), package="mosaicsExample"),
chipFileFormat="bam", chipPET=FALSE, chipFragLen=200,
controlFile=system.file( file.path("extdata","wgEncodeBroadHistoneGm12878ControlStdAlnRep1_chr22_sorted.bam"), package="mosaicsExample"),
controlFileFormat="bam", controlPET=FALSE, controlFragLen=200, parallel=TRUE, nCore=8 )
peakHM
peakHM <- findSummit( peakHM, parallel=TRUE, nCore=8 )
head(print(peakHM))
plot( peakHM, filename="~/peakplot_HM.pdf" )
peakHM <- adjustBoundary( peakHM, parallel=TRUE, nCore=8 )
peakHM
head(print(peakHM))
peakHM <- filterPeak( peakHM, parallel=TRUE, nCore=8 )
peakHM
head(print(peakHM))
export( peakHM, type = "txt", filename = "./peakHM.txt" )
export( peakHM, type = "bed", filename = "./peakHM.bed" )
export( peakHM, type = "gff", filename = "./peakHM.gff" )
export( peakHM, type = "narrowPeak", filename = "./peakHM.narrowPeak" )
export( peakHM, type = "broadPeak", filename = "./peakHM.broadPeak" )
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.