DMRcate fails in ChAMP package
1
0
Entering edit mode
@rasmusrydbirk-12534
Last seen 5.6 years ago

I get the following errors when running champ.DMR choosing DMRcate as my method. I'm testing on 8 EPIC samples in two groups (4+4). Standard champ.process has been followed so far (BMIQ normalization and impute).


<< Find DMR with DMRcate Method >>
Error in if (nsig == 0) { : missing value where TRUE/FALSE needed
In addition: Warning messages:
1: In if (arraytype == "450K") { :
  the condition has length > 1 and only the first element will be used
2: In if (arraytype == "EPIC") { :
  the condition has length > 1 and only the first element will be used
3: In logit2(assay(object, "Beta")) : NaNs produced
4: In logit2(assay(object, "Beta")) : NaNs produced
5: Partial NA coefficients for 170073 probe(s)

Does anybody know what nsig == 0 means? I can't find any information in the DMRcate manual.

ChAMP • 2.7k views
ADD COMMENT
2
Entering edit mode
Yuan Tian ▴ 90
@yuan-tian-9598
Last seen 4.9 years ago
Hello Rasmus: This Error was caused inside DMRcate function, ChAMP used used DMRcate function here. I am about to communicate with the author of DMRcate now since this error already caused my ChAMP paper get rejected... Based on my experience, the bug lines on cpg.annotate.R function, 29 lines. It would happen when your data does not have enough DMP. So for someone have few samples, or not significant comparison groups, it would happen. (Also that's why it's hard for me to debug it out myself because I happen not to have any data set trigger this error......). I tried to debug it once, and I think nsig means number of significant CpGs detected by limma, but sometimes, DMRcate function would return NA for this value. If I solved this problem, I will tell your. Best Yuan Tian
ADD COMMENT
0
Entering edit mode

Thank you for the quick reply!

I was assuming something like that, too few samples --> too few DMPs/DMRs. Also, my test samples are actually from the same group (controls), so it's not that strange that the groups don't differ.

I will test on 16 samples next week (CTRL><case), I will return then with an update on things. Best of luck with your paper!

ADD REPLY
0
Entering edit mode

Hello Rasmus:

This error would happen sometime if user using cpg.annotate() function in DMRcate() function without assign Data Matrix's type —— "Beta" or "M". It would more likely happen to small datasets. I have fixed this problem in new version package (2.6.1). And author of DMRcate will also make DMRcate more robust.

You may try new version package in 48 hours.

Best

Yuan Tian

ADD REPLY
0
Entering edit mode

Hello Yuan

Yes, the problem has been resolved, perfect! I'm testing on a Win7x64 machine, I get the error

Error in mclapply(chr.unique, fitParallel, object = object, consec = consec,  : 
  'mc.cores' > 1 is not supported on Windows

when I try to run with more than 1 core. However, using only 1 core gets the job done. I assume no problems will arise on Unix.

Thank you for your help, keep up the good work!

ADD REPLY
0
Entering edit mode

I encountered the same error. I used few samples (4+6) so I guess that was the reason. However, I can use cpg.annotate to get more DMP by setting the fdr higher (the default value is 0.05).  If I could set the fdr inside DMRcate function when using champ.DMR, I guess the problem could be solved.

ADD REPLY

Login before adding your answer.

Traffic: 634 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

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

Powered by the version 2.3.6