Fraternalilab / sciCSR

Single-Cell Inference of Class Switch Recombination
GNU General Public License v3.0
18 stars 3 forks source link

Incorporation of multiple Kernels CellRank 2 #9

Open JonasDBM opened 4 months ago

JonasDBM commented 4 months ago

Hi,

many thanks for developing and maintaining this very cool tool! We could already obtain some very nice insights using sciCSR! However, as you pointed out in your tutorial using SHM as mode for trajectory inference can sometimes be difficult given its sometimes rather modest differences. I therefore wanted to ask if there is a possibility of incorporating the "SHM kernel" together with other Kernels as experimental time or RNA velocity as introduced in CellRank2. Many thanks for any help! :)

josef0731 commented 4 months ago

Thank you - and it is very nice to hear that sciCSR is useful for you. I will definitely update the cellrank functionalities in sciCSR to CellRank2 - apologies this is a one-man job at the moment and I have a few other projects going on. Under the hood, sciCSR generated a pseudotime ordering ("CSR potential" and "SHM level" as described in our paper), and then use this pseudotime to build a CellRank PseudotimeKernel. I believe this is part of CellRank2, just that they updated some of the functions used to initialise and build the transition matrices.

If you would like to incorporate CSR/SHM with the other kernels provided in CellRank2, you are most welcome to do so - my suggestion at the moment (i.e. until I explore how to do so within the sciCSR R package) would be to start from the .h5ad object you would have created just before you built the transition matrices. You should see separate columns csr and shm in the adata.obs slot - those are the pseudotime orderings used to build the transition matrices under the hood in sciCSR. Only drawback here would be that you would need to switch to Python at that point and follow CellRank (which depending on your background, you may already prefer Python over R! :))

One of the issues I can see is that it is uncertain what the optimal way is to combine the kernels, i.e. what weighting to give to each type of information? Not sure I have the answer to this question, but just to say as in the last paragraph that at the moment you can have a look at how feasible this is starting from the CSR/SHM information we calculated and exported in the .h5ad file.

Hope this helps! Joseph