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

Error when using calc_phylo_pseudotime with bcr data #7

Closed mengchengyao closed 1 year ago

mengchengyao commented 1 year ago

Hi Thank you for your great tool. I have get an error when I use calc_phylo_pseudotime with bcr data, as flows: pv.calc_phylo_pseudotime(sd, r_sample=0.05, n_neighbors=100) 96%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▏ | 631/656 [00:49<00:01, 12.78it/s] Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/mnt/blockstorage/anaconda3/envs/phylovelo2/lib/python3.9/site-packages/phylovelo/pseudo_time.py", line 142, in calc_phylo_pseudotime path = prim(graph, 0) File "/mnt/blockstorage/anaconda3/envs/phylovelo2/lib/python3.9/site-packages/phylovelo/pseudo_time.py", line 109, in prim nodes.remove(next) KeyError: 630 The Version of python and other packages is suite version which describled by github requirements.txt , what is more, when I add line with # and got same error with same line(line 142 and line 142).

Any suggestion for the tool? Or do you have developed environment with dockerfile?

Thanks

kunwang34 commented 1 year ago

Hi, This problem is caused by the sampling ratio r_sample or n_neighbors being too low, and there are some random factors. From the code you provided, your data size is relatively small, you can consider increasing r_sample within the acceptable calculation time, or repeat the calculation a few times.

mengchengyao commented 1 year ago

OK, Thanks.

Bests