-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question on interpreting the permutation results #6
Comments
Hello Ming, Jeff |
Thank you for your confirmation! Ming |
I have one more question: Is the interpretation of variable FDRpercent the same for both bootstrap (with replacement) and permutation (without replacement)? Thanks for your detailed answers, |
Yes the calculation and interpretation should be the same. With my data, I found they often gave similar results. I implemented both so it can easily be done either way. The only subtlety to the interpretation is that the bootstrap mode is attempting to "redraw" more samples (to empirically estimate the sample means) , whereas the permutation mode is just shuffling the groups to create a null. For a larger sample size, the bootstrap could be interpreted as an estimate of the sampling distribution. |
Just to make sure I am understanding this correctly, the example:
means that 179.93 % of the obeserved 98 DMRs are false positives? Does this mean that all 98 DMRs are false positives? |
Yes. In this case, there can be an FDR reported over 100 when the permutations had more DMRs than in the real data. In these cases, our interpretation is the pattern is unlikely to have support for any real DMRs given the data, since the null is capable of finding just as many or more on average. |
Hi, I have also doubts about the results after bootstrapping. First of all, I would like to know the appropiate number of permutations to choose. I have only 2 groups and I have used nperms=3 following the how-to example. With this approach I have obtained: Does it mean that I can only trust in those with a low FDR percentage? Let's say less than 10%... and consider just these as actual DMRs? |
Hello IRECG. There's an example of this plot in Figure S1E and S1F of our Bhasin et al, Cell Reports, 2015 paper (https://www.cell.com/cell-reports/pdfExtended/S2211-1247(15)01286-3). I would say 3 is probably not enough and ideally you could try to do 100 or more. The interpretation is correct - that we only expect those patterns with a low FDR percentage to be real. Otherwise, DMRs of that pattern are abundant even in the null case. What is your sample size? The permutations are more relevant in cases of large sample sizes and many groups. They may not be informative if there are not enough degrees of freedom to permute in the first place. Jeff |
Hello Jeff, Thanks |
In that case the permutation should have enough to work with. Yes log2fc can be used to filter. |
So, if I run methylaction with "perm.boot=FALSE" what is occuring is permutation, isn't it? But in that case I don't have information of FDR, and I should use log2fc to select DMRs, is it correct? |
perm.boot is an option that determines if they should be permutations (without replacement) for bootstraps (with replacement). In both cases, there will be FDRs generated. Regardless of if you determine FDR or not, filtering by log2fc is still recommended. |
From the documentation for methylaction() command - perm.boot is only relevant if nperms > 0. The setting for nperms determines if permutations/bootstraps and hence FDR are being computed at all. Can also consider maPerm() to generate bootstraps/permutations after a call to methylaction(). This is how I would run it, and also allows using multiple computers to compute the permutations in parallel if run separately on the same original output from methylaction().
|
I'm sorry if I did not explain me clearly, after reading the methylaction documentation I was a bit confused, because I am not an expert in all these terms. My question is: should I do permutation/bootstraping or not (perm.boot=FALSE) due to my sample size? In the case of not doing any I would use only log2fc to filter, in the other case after FDR I would select those that I can trust as a group and after log2fc to select individually the DMRs. |
In our tests, we found permutation and bootstrap usually gave similar results. I would start with permutation (perm.boot=FALSE) and see what the results are. |
There must be permutations (or bootstraps) done in order for FDR to be calculated. |
If there were not permutations (or bootstraps) run, you can use the maPerm() and maPermFdr() functions to run them and compute the FDRs after the fact. Please see the function documentation for a description: http://www.jeffbio.com/methylaction/docs/methylaction-manual.pdf |
Hi Jeff,
I would like to make sure that I understand the permutation results correctly.
From the website, http://www.jeffbio.com/methylaction/docs/#permutation-and-bootstrap-testing the permutation results has the following examples:
(Note: I know that the example is a bootstrap results. I am currently using permutations, so I'd like to use your results as a hypothetical permutation result.)
From these results, can we deduce that
for pattern 010, the number of false positive DMRs in 468 is very small because the permMean is very low (6.33), and
for pattern "all", the number of false positive DMRs in 1263 is very large because the permMean is very high (819.33)?
Thanks,
Ming
The text was updated successfully, but these errors were encountered: