-
Notifications
You must be signed in to change notification settings - Fork 7
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
correcting in multiple steps #21
Comments
I would create a blocking factor where each batch in each time point is its own level, e.g., Then I would run it through my variance modelling function of choice with Next is the Finally, onto the merge.order = list(c("T1-B1", "T1-B2", "T1-B3"), c("T2-B1", "T2-B2"), c("T3-B1", "T3-B2")) will instruct Alternatively - and not really recommended - you can call |
Thank you! This is very helpful. With the output of Thank you very much for your help. |
You'll need a single set of features - you can just call |
Thank you very much! |
I closed the issue, but would you mind if I ask you one more question? I have treatment samples and control samples from each time point, and controls are supposed to be the same in every time point. (If there are changes between different time points' controls, I am not interested in those and ideally want to remove them.) Is it possible to compare biological difference between timepoints using this control information? Thank you very much for your help. |
Sure, check out the Personally, I have found this mode to be rather disappointing in practice, because the batch effects in the control are often not the same as the batch effects in the treatment. I suspect it only works if your controls are really similar to the treatments (e.g., same cell types, similar expression profiles). But you can give it a go and see how it works for you. Also keep in mind that, while you will preserve differences between treatments, this may not be desirable for annotation of your dataset, e.g., if you have to manually re-identify the same cell type across each of your treatments. The main - and maybe only - purpose of merging datasets is so that we only have to cluster and annotate once; if you have a strong treatment effect, the same cell type might be scattered across different clusters (one per treatment), which would be annoying to match up. |
That makes sense, thank you very much. |
Hi Aaron, Sorry for reopening this issue. May I ask you a few more questions re. this experimental design?
I am setting Thank you very much for your help. |
Would you mind opening a new issue? This should make it easier to keep track of. |
Hi Aaron, thank you for developing and maintaining a great package!
I have time course data from 4 different time points, and each time point has multiple batches. There are biological differences between time points, but there are common cells too.
How would you recommend me to select HVGs,
multibatchnorm
and batch correct for such a dataset?If I batch correct within each time point first then batch correct across time points, can I use MNN corrected matrix as an input for MNN correction?
Thank you so much for your help!
The text was updated successfully, but these errors were encountered: