Question: New version of ChAMP can not proceed through champ.DMP
0
2.1 years ago by
sarka.vorackova0 wrote:

Hi,

I recently got the new version of ChAMP 2.8.9 and now I can not proceed through champ.DMP, an error now occures that did not show up when I was using the previous version 2.8.7. champ.DMP runs without problem until the annotation section.

myDMP <- champ.DMP(arraytype = "EPIC")
#now it finds the MVPs, compares each Sample Group with one another, no problem
...

[ Section 3 : Match Annotation Start ]

Error in rowMeans(beta[com.idx, which(pheno == Compare[[i]][1])]) :
'x' must be an array of at least two dimensions

I have the same data, nothing in my samples/sample sheet was changed.

Any idea what might be the problem? Could it be the new version?

Sarka

champ • 866 views
modified 2.1 years ago • written 2.1 years ago by sarka.vorackova0
Answer: New version of ChAMP can not proceed through champ.DMP
1
2.1 years ago by
Yuan Tian80
London
Yuan Tian80 wrote:

Hello Sharka:

I did not change any code in champ.DMP() since version 2.8.7 to version 2.8.9. The error happens when ChAMP want to calculate mean value for each DMP in each group. I suspect the reason is there is only 1 DMP significant, thus code

beta[com.idx, which(pheno == Compare[[i]][1])]

Can only select on row only, which is a vector not a matrix, thus rowMeans function can not be applied on that. Could you check previous output of champ.DMP()? I suspect there is one result showing that only 1 DMP is detected, if there are two, I believe this error would not happen.

Another thing is I know you are using same data set, but did you do normalization again? BMIQ normalization use Random Seed in the function, so if you run BMIQ on same data twice, the result would be slightly different. So if you use the same data, run normalization twice, then use the result into champ.DMP(), one may find 2-3 DMPs, and the other is only 1 DMP, then the previous result would not trigger any error, but the 1 DMP result would.

The most important change in 2.8.9 is champ.import(), which now can process mix array, and changed "minfi"  method's annotation. So if you reloaded the data, the result also might be slightly different.

Thus, I wonder, if you have any process of reloading or renormliazing data? If so, the error might be triggered by some random difference. Also I suggest you check your previous result from version 2.8.7, see if in previous result, DMP list contains very few CpGs, and their p value cutoff are close to 0.05, which might failed this threshold because of your reprocessing work.

About solution, champ.DMP() support multiple phenotype yes, but if you want to compare specific two phenotype, you may assign parameter "compare.group" to achive that, to avoid other not important and less significant comparision fail the program.

I will modify code in next version to avoid this error happen.

Best

Yuan Tian

I can confirm the error appears when the number of significant DMP is one.

Answer: New version of ChAMP can not proceed through champ.DMP
0
2.1 years ago by
sarka.vorackova0 wrote:

Dear Yuan Tian,

thank you for the quick answer!

I unfortunatelly don't have the previous output of dmps because I had only testing set of samples to see if it works on my computer anyway I loaded and normalized the data through default methods (ChAMP, BMIQ). For the current analysis I am imputting 56 samples divided into 6 groups that I am comapring with one another and I used method minfi for loading and Functional normalization. Do you think that could be the problem, the different methods?

Anyway I tried to add "compare.group" parametr and it worked well (found from 100 to 3000 dmps for each comparison) so the problem is just that I can't analyze all the samples at once, so I will compare each samples one by one.

Also can I have an additional question about the DMRs table (created by method DMRcate)? I am not sure what is the "meanbetafc" value - is it the fold-change or just the difference/delta of beta values?

Thank you very much for helping!

Sincerely,
Sarka

Hello Sarka:

Sorry I was quite busy last week. First question, since you have only about 56/6 samples in each group, maybe the power of test would not be very strong, so it could be the reason. I still think it resulted from some CpGs with p value very close to 0,05. Since BMIQ use random seed, it's indeed could cause some minor difference, but should not be much.

About the second question: : meanbetafc is Mean beta fold change within the region.

By the way, ChAMP paper use released on Bioinformatics, thanks for your support.

Best

Yuan Tian