Skip to main content

Implements *CellAnnotator (aka *CAT/starCAT), annotating scRNA-Seq with predefined gene expression programs

Project description

starCAT

Implements *CellAnnotator (aka *CAT/starCAT), annotating scRNA-Seq with predefined gene expression programs

Citation

If you use *CAT, please cite our preprint.

Installation

You can install starCAT and its dependencies via the Python Package Index.

pip install starcatpy

We tested it with scikit-learn 1.3.2, AnnData 0.9.2, and python 3.8. To run the tutorials, you also need jupyter or jupyterlab as well as scanpy and cnmf:

pip install jupyterlab scanpy cnmf

Basic starCAT usage

Please see our tutorials in python and R. A sample pipeline using a pre-built reference programs (TCAT.V1) is shown below.

# Load default TCAT reference from starCAT databse
tcat = starCAT(reference='TCAT.V1')

# tcat.ref.iloc[:5, :5]

#                     A1BG       AARD     AARSD1      ABCA1     ABCB1
# CellCycle-G2M   2.032614  22.965553  17.423538   3.478179  2.297279
# Translation    35.445282   0.000000   9.245893   0.477994  0.000000
# HLA            18.192997  14.632670   2.686475   3.937182  0.000000
# ISG             0.436212   0.000000  18.078197  17.354506  0.000000
# Mito           10.293049   0.000000  52.669895  14.615502  3.341488

# Load cell x genes counts data
adata = tcat.load_counts(datafn)

# Run starCAT
usage, scores = tcat.fit_transform(adata)

usage.iloc[0:2, 0:4]
#                             CellCycle-G2M  Translation       HLA       ISG
# CATGCCTAGTCGATAA-1-gPlexA4       0.000039     0.001042  0.001223  0.000162
# AAGACCTGTAGCGTCC-1-gPlexC6       0.000246     0.100023  0.002991  0.042354

scores.iloc[0:2, :]
#                                  ASA  Proliferation  ASA_binary  \
# CATGCCTAGTCGATAA-1-gPlexA4  0.001556        0.00052       False   
# AAGACCTGTAGCGTCC-1-gPlexC6  0.012503        0.01191       False   

#                             Proliferation_binary Multinomial_Label  
# CATGCCTAGTCGATAA-1-gPlexA4                 False         CD8_TEMRA  
# AAGACCTGTAGCGTCC-1-gPlexC6                 False         CD4_Naive  

starCAT also can be run in the command line.

starcat --reference "TCAT.V1" --counts {counts_fn} --output-dir {output_dir} --name {outuput_name}
  • --reference - name of a default reference to download (ex. TCAT.V1) OR filepath containing a reference set of GEPs by genes (*.tsv/.csv/.txt), default is 'TCAT.V1'
  • --counts - filepath to input (cell x gene) counts matrix as a matrix market (.mtx.gz), tab delimited text file, or anndata file (.h5ad)
  • --scores - optional path to yaml file for calculating score add-ons, not necessary for pre-built references
  • --output-dir - the output directory. all output will be placed in {output-dir}/{name}...'. default directory is '.'
  • --name - the output analysis prefix name, default is 'starCAT'

Alternate implementation

For small datasets (<2 GB), try running starCAT without installing any packages on our website.

Creating your own reference

We provide example scripts for constructing custom starCAT references from a single cNMF run or multiple cNMF runs.

Please let us know if you are interested in making your reference publically available for others to use analogous to our TCAT.V1 reference. You can email me at dkotliar@broadinstitute.org

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

starcatpy-1.0.9.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

starcatpy-1.0.9-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file starcatpy-1.0.9.tar.gz.

File metadata

  • Download URL: starcatpy-1.0.9.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.19

File hashes

Hashes for starcatpy-1.0.9.tar.gz
Algorithm Hash digest
SHA256 fc6053c41b906fb30e53cd0e59c2e463f628aa2a2d80d1789a5a086613e42cfa
MD5 7c2bcd3d1bd43749d2cbea66b27a457b
BLAKE2b-256 202522b67cf706e0c0e5704a4183d6837f644a4b0ce6d0f006ea1c9141154932

See more details on using hashes here.

File details

Details for the file starcatpy-1.0.9-py3-none-any.whl.

File metadata

  • Download URL: starcatpy-1.0.9-py3-none-any.whl
  • Upload date:
  • Size: 17.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.19

File hashes

Hashes for starcatpy-1.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 0183e9cbde3ec577da7436d97811a9616adb1bbab0485de860ae3b132f789b8f
MD5 4bc3124edd0ebaf85984f033852aa9ae
BLAKE2b-256 94eebe9b5446c74a4f26be5cbd61085e264bdb6f00dc7c4ef1c364a7743f7b56

See more details on using hashes here.

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