TIVelo: RNA velocity estimation leveraging cluster-level trajectory inference
RNA velocity inference is a valuable tool for understanding cell development, differentiation, and disease progression. However, existing RNA velocity inference methods typically rely on explicit assumptions of ordinary differential equations (ODE), which prohibits them to capture complex transcriptome expression patterns. In this study, we introduce TIVelo, a novel RNA velocity estimation approach that first determines the velocity direction at the cell cluster level based on trajectory inference, before estimating velocity for individual cells. TIVelo calculates an orientation score to infer the direction at the cluster level without an explicit ODE assumption, which effectively captures complex transcriptional patterns, avoiding potential inconsistencies in velocity estimation for genes that do not follow the simple ODE assumption. We validated the effectiveness of TIVelo by its application to 16 real datasets and the comparison with five benchmarking methods.
Demo
The instructions for running TIVelo for different kinds of datasets can be found in examples.
Reproducibility
To reproduce our results, please refer to the folder notebooks or our tutorial website.
Datasets
All datasets used in this research are openly accessible to the public. To achieve the datasets used in this research, please refer to our Figshare page. The datasets in Figshare are the version after scVelo standard preprocessing pipeline.
Installation
TIVelo requires Python 3.8 or later. We recommend using Miniconda for managing the environment. The typical time for installing our package is 3 minutes.
Step 1: Create and Activate the Conda Environment
First, create a new Conda environment with Python 3.9:
conda create -n tivelo python=3.9 -y
conda activate tivelo
Step 2: Install Dependencies
We have published the TIVelo package on PyPI. To ensure a smooth and stable installation process, we recommend installing large dependencies separately before installing TIVelo in a Conda environment.
PyTorch
Install PyTorch along with torchvision, torchaudio, and CUDA support:
conda install pytorch==2.5.0 torchvision==0.20.0 torchaudio==2.5.0 pytorch-cuda=12.1 -c pytorch -c nvidia -y
Numba
Install Numba:
To enable CUDA GPU support for Numba, install the latest NVIDIA graphics drivers for your platform (the open-source Nouveau drivers do not support CUDA). Then install the CUDA Toolkit package.
For CUDA 12, install the following:
conda install -c conda-forge cuda-nvcc cuda-nvrtc "cuda-version>=12.0" -y
For CUDA 11, install the following:
conda install -c conda-forge cudatoolkit "cuda-version>=11.2,<12.0" -y
Note: You do not need to install the CUDA SDK from NVIDIA.
Cpu version
conda install numba
Scanpy
Install Scanpy along with additional dependencies:
conda install -c conda-forge scanpy python-igraph leidenalg -y
scVelo
Install scVelo:
pip install scvelo==0.3.1
Optional dependencies for directed PAGA and Louvain modularity:
pip install igraph louvain
Optional dependencies for fast neighbor search via hnswlib:
pip install pybind11 hnswlib
Step 3: Install TIVelo
Finally, install TIVelo:
pip install tivelo
JupyterLab
To run the tutorials in a notebook locally, please install JupyterLab:
conda install jupyterlab -y
With these steps, TIVelo and its dependencies will be installed and ready for use.
Release files for tivelo 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tivelo-0.1.4.tar.gz | 26.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tivelo-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 57.1 kB
Release files / tivelo-0.1.4.tar.gz
| Download URL | tivelo-0.1.4.tar.gz |
|---|---|
| Size | 26.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
05a70099fb910684b7cb0c5a8378dcab68f01f95280c0224b6a591405235fa52
|
|
BLAKE2b-256 checksum How to use checksums |
06c6b482e36021a9da61ebcd8f3d7f04758b88c4eaea95dee0f6cd8230002f71
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 11, 2025.
Transparency logRelease files / tivelo-0.1.4-py3-none-any.whl
| Download URL | tivelo-0.1.4-py3-none-any.whl |
|---|---|
| Size | 30.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
960522e9b282ce96c3453356f285afbcdaf042d0168c82eb8d710445b5e6755d
|
|
BLAKE2b-256 checksum How to use checksums |
c205a5f37bccf8549326d942645fb98737493804188045a82b08ae9acf654ed1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 11, 2025.
Transparency log