ChAMP Normalization on EPIC Methylation Data
Entering edit mode
Last seen 10 months ago

Hi there, 

I met a problem when using ChAMP to perform normalization on EPIC data. Actually, SWAN, PBC and BMIP can work well, but when I use FunctionalNormalization  to do that, I always got an Error. My code is, 

myNormfn <- champ.norm(beta=myLoad_B$beta,
                       method="FunctionalNormalization",  #BMIQ

While the error message is,

[preprocessFunnorm] Background and dye bias correction with noob
Loading required package: IlluminaHumanMethylationEPICanno.ilm10b3.hg19
[dyeCorrection] Applying R/G ratio flip to fix dye bias
[preprocessFunnorm] Mapping to genome
[preprocessFunnorm] Quantile extraction
[preprocessFunnorm] Normalization
Error in getBeta(preprocessFunnorm(rgSet))[rownames(beta), ] :
  subscript out of bounds
Calls: champ.norm
Execution halted

I don't know why there is always such a problem. Is there anything to do with the required package IlluminaHumanMethylationEPICanno.ilm10b3.hg19, because when I install ChAMP, actually what will also be installed automatically is IlluminaHumanMethylationEPICanno.ilm10b2.hg19, not IlluminaHumanMethylationEPICanno.ilm10b3.hg19. It is 10b2, not 10b3, and I need to install 10b3 by specially when did normalization. I don't know whether this is the point, or there are any other causes. Could anyone give me some help? Thank you so much!

My R version is 3.5.0

Best wishes,


ChAMP Normalization FunctionalNormalization methylation EPIC • 1.0k views
Entering edit mode

At the moment, functional normalization does not greatly enhance results over the underlying ssNoob performance on EPIC arrays (cf. ). You might consider using straight noob, as funnorm's results will be dataset dependent, and ssNoob is a single-sample approach. The choice depends on your experiment.


Alternatively, the best results we have seen on TARGET, TCGA, and other varied datasets have come from sesame ( ) which unfortunately is not yet integrated into a ChAMP workflow (although sesame::sesamize() could easily allow the authors of ChAMP to do this).  SeSAMe will be part of the imminent BioC-3.8 release ( ) and if we knew of any better approach to preprocess Illumina methylation data, we'd just use that instead, so we'd love to see its strengths integrated widely.

Entering edit mode

OK. Thank you so much.


Login before adding your answer.

Traffic: 473 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6