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.
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!
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
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!
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.