kunwang34 / PhyloVelo

PhyloVelo, Phylogeny-based transcriptomic velocity of single cells
https://phylovelo.readthedocs.io/en/latest
BSD 3-Clause "New" or "Revised" License
40 stars 4 forks source link

How to prepare input data? #10

Closed Junjie-Hu closed 1 year ago

Junjie-Hu commented 1 year ago

Hi, What's the format of input data? I have 10X UMI data and loom files from Velocyto. The web of Phylovelo did not describe the input data in detial. For example, "sd = pv.scData(count=xx, phylo_tree=xx)". Could you give a example of human 10X scRNA-seq?

kunwang34 commented 1 year ago

Hi, thank you for your interest in PhyloVelo. PhyloVelo requires lineage tracing data to estimate the velocity. The input format for PhyloVelo is that you need to provide a UMI count matrix X (pandas.DataFrame) and a phylogenetic tree T (biopython.Phylo.BaseTree) as arguments to the pv.scData function, such as sd=pv.scData(count=X, phylo_tree=T). Only 10X scRNA-seq is not suitable for PhyloVelo analysis. I hope this helps. Please let me know if you have any other questions or feedback.

iceautumn commented 1 year ago

Hi, thank you for your interest in PhyloVelo. PhyloVelo requires lineage tracing data to estimate the velocity. The input format for PhyloVelo is that you need to provide a UMI count matrix X (pandas.DataFrame) and a phylogenetic tree T (biopython.Phylo.BaseTree) as arguments to the pv.scData function, such as sd=pv.scData(count=X, phylo_tree=T). Only 10X scRNA-seq is not suitable for PhyloVelo analysis. I hope this helps. Please let me know if you have any other questions or feedback.

I'm very intersted in this new tool and working on it. Because i am new to the analysis of scRNA-seq data, i don't know how to generate a phylogenetic tree or get a newick data, could you suggest any suitable tools for creating a phylogenetic tree? Perhaps URD or Monocle might be suitable? Thank you in advance for your guidance.

kunwang34 commented 1 year ago

Hi @iceautumn,

Thank you for your interest in our PhyloVelo work. To reconstruct a phylogenetic tree, you need to have DNA-seq data as the input. There are different algorithms that can be used for this task, such as maximum parsimony, neighbor joining or maximum likelihood. In our PhyloVelo work, we used the following tools to implement these algorithms:

R package phangorn for maximum parsimony R package ape for neighbor joining IQ-TREE for maximum likelihood Please note that these methods require DNA sequences as the input, and scRNA-seq data alone cannot be used for this purpose.

I hope this helps you understand our PhyloVelo work better. Best regards, Kun