latest pandas
Hi, The latest pandas is 2.1.0, while pyroe needs pandas <= 1.5. Lots of packages now depend on pandas >= 2.0. Degrading pandas to 1.5 will cause some compatibility issues with other packages. So could you update pandas ?
Thanks for the update. Last I recall, the problem was recursive due to an upstream dependency on pyranges that was using Pandas < 2. I'm pinging @DongzeHE here.
I'll note that, in general, we recommend to upgrade / change to roers for building splici and spliceu transcriptomes. In addition to being faster and more memory friendly (it's written in Rust), the main motivation of re-implementing the reference building functionality of pyroe in roers was actually to avoid the constant dependency management challenges introduced by Python (and by the pyranges dependency in particular).
I would like to change to roers, is it supported by simpleaf now ? simpleaf is a rust framework to make using alevin-fry even simpler. It recommends to use pyroe in its documentation. https://github.com/COMBINE-lab/simpleaf
Hi @wangjiawen2013,
Yes! One of the (additional) benefits of moving from from pyroe to roers is that, since roers is a rust library, we can directly include it in simpleaf, rather than having to make the user put an additional tool in their path. If you download a recent (we recommend the most recent) release of simpleaf, it will have roers included, and will use that by default for reference generation.
It looks like we need to update the docs, @DongzeHE! Thanks for pointing this out @wangjiawen2013. Let us know if this works for you and, if so, we can close this issue.
Best, Rob
According to alevin's tutorial, we can Load output using pyroe (https://combine-lab.github.io/alevin-fry-tutorials/2023/simpleaf-piscem/):
# Run in python
from pyroe import load_fry
#define count matrix format
custom_format = {'X' : ['S', 'A'],
'unspliced' : ['U']}
# load count matrix
adata = load_fry("pbmc1k_quant/af_quant",
output_format = custom_format)
But how to load the output using roers ? I typed "from roers import load_fry", but it showed an error "ModuleNotFoundError: No module named 'roers'"
Hello @wangjiawen2013 , we are working on updating pyroe. For now, a workaround is that you can define the load_fry function directly in your script. You can find the function from here, and copy and paste of load_fry.py in your script. This function is very stable and we do not expect to update it in the near future. The only dependency of this function is scanpy
Sorry for the inconvenience. Please let us know if you encounter any problems!
Best, Dongze