- Notifications
You must be signed in to change notification settings - Fork6
Cell-type Assignment and Module Extraction based on a heterogeneous graph neural network.
License
XingyanLiu/CAME
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
English |简体中文
CAME is a tool forCell-type Assignment and Module Extraction, based on a heterogeneous graph neural network.
For detailed usage, please refer toCAME-Documentation.
CAME outputs the quantitative cell-type assignment for each query cell, that is,the probabilities of cell types that exist in the reference species, whichenables the identification of the unresolved cell states in the query data.
Besides, CAME gives the aligned cell and gene embeddings across species, whichfacilitates low-dimensional visualization and joint gene-module extraction.
It's recommended to create a conda environment for running CAME:
conda create -n env_came python=3.8conda activate env_came
Install required packages:
# on CPUpip install"scanpy[leiden]"pip install torch# >=1.8pip install dgl# tested on 0.7.2, better below 1.0.*
SeeScanpy,PyTorch andDGLfor detailed installation guide (especially for GPU version).
Install CAME by PyPI:
pip install came
Install the developmental version of CAME from source code:
git clone https://github.com/XingyanLiu/CAME.gitcd CAMEpython setup.py install
The test code is based on the sample data attached to the CAME package.It is initially saved in compressed form (CAME/came/sample_data.zip
),and will be automatically decompressed to the default directory(CAME/came/sample_data/
) when necessary, which contains the following files:
- gene_matches_1v1_human2mouse.csv (optional)
- gene_matches_1v1_mouse2human.csv (optional)
- gene_matches_human2mouse.csv
- gene_matches_mouse2human.csv
- raw-Baron_mouse.h5ad
- raw-Baron_human.h5ad
You can access these data bycame.load_example_data()
.
If you tend to apply CAME to analyze your own datasets, you need toprepare at least the last two files for the same species (e.g., cross-datasetintegration);
For cross-species analysis, you need to provide another.csv
file where the first column contains the genes in the reference species and thesecond contains the corresponding query homologous genes.
NOTE:the file
raw-Baron_human.h5ad
is a subsample from the original datafor code testing. The resulting annotation accuracy may not be as good asusing the full dataset as the reference.
Suggestions
If you have sufficient GPU memory, setting the hidden-size
h_dim=512
in "came/PARAMETERS.py" may result in a more accurate cell-type transfer.
To test the package, run the python filetest_pipeline.py
:
# test_pipeline.pyimportcameif__name__=='__main__':came.__test1__(6,batch_size=2048)came.__test2__(6,batch_size=None)
python test_pipeline.py
- Issue Tracker:https://github.com/XingyanLiu/CAME/issues
- Source Code:
- https://github.com/zhanglabtools/CAME
- https://github.com/XingyanLiu/CAME (the developmental version)
If you are having issues, please let us know. We have a mailing list located at:
If CAME is useful for your research, consider citing our work:
Liu X, Shen Q, Zhang S. Cross-species cell-type assignment of single-cell RNA-seq by a heterogeneous graph neural network[J]. Genome Research, 2022: gr. 276868.122.
About
Cell-type Assignment and Module Extraction based on a heterogeneous graph neural network.