Questions about multiple sample analysis #10
Replies: 1 comment 2 replies
-
We found that removing the batch effect is a very complicated procedure for RNA velocity and don't recommend it to users in its current state. Further studies may resolve this issue more carefully. But here are the steps we took to generate batch-corrected datasets. It uses the Seurat anchors workflow (FindIntegrationAnchors and IntegrateData). Each of the full RNA expression matrices, unspliced and spliced matrices, as well as gene-aggregated ATAC-seq matrix are extracted, integrated, and imputed independently between two samples. The raw ATAC-seq peak matrices can be integrated using the IntegrateEmbeddings method in Signac, and together with the integrated full RNA matrix, the weighted nearest neighbors can be found. These outputs can then be read into python and processed using the standard MultiVelo procedure. If possible, run dynamics recovery on samples coming from the same batch only, and avoid merging/integrating multiple samples. The filter cells functions filter the whole AnnData object, and that means all of the RNA, unspliced, and spliced matrices are subsetted. This is a quality control step to remove low-quality cells with low counts. Check out this scanpy tutorial for a more comprehensive QC workflow. |
Beta Was this translation helpful? Give feedback.
-
Hi,danie, I still have questions about sample merging. I thought we should talk about it here。
I checked the batch effect between the samples and it was not obvious on the RNA, but there were differences on the ATAC.My solution to this problem is to remove another batch of experimental data, which will not affect the purpose of my analysis.
And I don't understand the quality control of RNA loom
sc.pp.filter_cells(adata_rna, min_counts=1000)
sc.pp.filter_cells(adata_rna, max_counts=20000)
Which matrix is filtered, spliced or unspliced, and why?
I gave up the idea of merging samples at the beginning. I am trying to handle each sample separately and merge AnnData objects before running mv.recover_dynamics_Chrom. Is this a reasonable approach and how do you think multiple samples should be merged?
Beta Was this translation helpful? Give feedback.
All reactions