Skip to main content

Classify scRNA-seq profiling with highly resolved cell cycle phases.

Project description

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/ccAF which has all the dependencies and libraries required to run the ccAF classifier. To see how the Docker container is configured please refer to the Dockerfile. Please install Docker and then from the command line run:

docker pull cplaisier/ccaf

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/ccaf

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 transcriptome profiling data.

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ccAF-1.0.1.tar.gz (611.9 kB view hashes)

Uploaded Source

Built Distribution

ccAF-1.0.1-py3-none-any.whl (610.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page