farrellja / URD

URD - Reconstruction of Branching Developmental Trajectories
GNU General Public License v3.0
115 stars 41 forks source link

Remove Batch Effects from Samples of the Same Stage #41

Closed stephenchea closed 4 years ago

stephenchea commented 4 years ago

I have multiple samples per developmental stage. I notice that samples of the same stage are not as closely distributed along pseudotime as I would like. I have a feeling batch effects among samples of the same stage may explain this phenomenon. Is there a way to correct for batch effects between samples of the same stage across multiple stages?

farrellja commented 4 years ago

@stephenchea I don't have a perfect answer, but you would want to perform batch correction operations before creating the URD object, probably. I've used mnnCorrect (https://rdrr.io/bioc/scran/man/mnnCorrect.html) from the Marioni lab for this previously, which worked ok. I've also been very impressed with the new integration methods in the most recent release of Seurat (https://satijalab.org/seurat/v3.0/immune_alignment.html) and they've worked well on some data I'm working on now. You might want to look into trying one of those, and then building your diffusion map & calculating pseudotime on the batch corrected data. Another approach that we've tried in the past is calculating NMF modules on the data (https://github.com/YiqunW/NMF); often there is one or two modules that are specific to each batch -- sometimes you can grab the highly loaded genes from those modules and exclude them from your variable gene list (and downstream dimensionality reduction, diffusion map, and pseudotime analysis) to avoid using them downstream (assuming that the list doesn't include many/any developmentally important genes). We've sometimes found that they are mostly histone or ubiquitously expressed genes.