Navigation Menu

Skip to content

plaisier-lab/ccAF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ccAF: cell cycle ASU-Fred Hutch neural network based scRNA-seq cell cycle classifier

The ability to accurately assign a cell cycle phase based on a transcriptome profile has many potential uses in single cell studies and beyond. We have developed a cell cycle classifier based on a scRNA-seq optimized Neural Network (NN) based machine learning algorithm ACTINN. The ACTINN code was adapted from: https://github.com/mafeiyang/ACTINN

Dependencies

There are four dependencies that must be met for ccAF to classify cell cycle states:

  1. numpy - (install)
  2. scipy - (install)
  3. scanpy - (install)
  4. tensorflow - (install)

Python dependency installation commands:

NOTE! pip may need to be replaced with pip3 depending upon your setup.

pip3 install numpy scipy scanpy tensorflow

Installation of ccAF classifier

The ccAF classifier can be installed with the following command:

pip install ccAF

Alternatively use the ccAF Docker container

We facilitate the use of ccAF by providing a Docker Hub container cplaisier/scrna_seq_velocity which has all the dependencies and libraries required to run the ccAF classifier. To see how the Docker container is configured plaese refer to the Dockerfile. Please install Docker and then from the command line run:

docker pull cplaisier/scrna_seq_velocity

Then run the Docker container using the following command (replace with the directory where you have the scRNA-seq data to be classified):

docker run -it -v '<path to scRNA-seq profiles directory>:/files' cplaisier/scrna_seq_velocity

This will start the Docker container in interactive mode and will leave you at a command prompt. You will then want to change directory to where you have your scRNA-seq or trasncriptome profiling data.

Gene labels must be in human Gene Ensembl IDs to run ccAF

The data input into ccAF must use human Ensembl gene IDs (ENSG<#>), whithout the version number. If your data is not currenly labeled with Ensemble gene IDs you may try mygene or go to the BioMart.

Running ccAF against your scRNA-seq data

The first step in using ccAF is to import your scRNA-seq profiling data into scanpy. A scanpy data object is the expected input into the ccAF classifier:

import scanpy
import ccAF

# Load WT U5 hNSC data used to train classifier as a loom file
set1_scanpy = sc.read_loom('data/WT.loom')

# Predict cell cycle phase labels
predictedLabels = ccAF.predict_labels(set1_scanpy)

More complete example is available as test.py on the GitHub page.

Contact

For issues or comments please contact: Chris Plaisier

Citation

Neural G0: a quiescent-like state found in neuroepithelial-derived cells and glioma. Samantha A. O'Connor, Heather M. Feldman, Chad M. Toledo, Sonali Arora, Pia Hoellerbauer, Philip Corrin, Lucas Carter, Megan Kufeld, Hamid Bolouri, Ryan Basom, Jeffrey Delrow, Jose L. McFaline-Figueroa, Cole Trapnell, Steven M. Pollard, Anoop Patel, Patrick J. Paddison, Christopher L. Plaisier. bioRxiv 446344; doi: https://doi.org/10.1101/446344

About

Cell cycle classifier for scRNA-seq data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages