Question: cpg.annotate model requirements
0
3 months ago by

I am using ChAMP to process EPIC methylation array data. While delving into the source code for champ.DMR for another reason, I noticed that it defined the linear model used in the DMRcate method as ~ pheno. Further delving revealed that champ.DMR calls DMRcate::cpg.annotate, which itself requires a model with an intercept (e.g. it is has this in the function stopifnot(colnames(design)[1] == "(Intercept)")).

Is there any way to circumvent this and input a model into DMRcate (and thus, into champ.DMR) that has no intercept, as in 0 + pheno? This is necessary as other methods (like champ.DMP) already use a no intercept model.

champ dmrcate • 125 views
modified 3 months ago by Yuan Tian120 • written 3 months ago by kadm0

You can specify contrasts=TRUE and pass a contrasts matrix (as you would in limma) to cpg.annotate; this will allow you to fit non-intercept models.

Tim

0
3 months ago by
Yuan Tian120
University College London
Yuan Tian120 wrote:

Sorry that ChAMP did not designed parameter to set intercept in DMRcate, thus I suggest you directly run DMRcate package with specific settings. The result should not be too hard to organize.

Best Yuan Tian