cNMF Solution Network Space
Project description
cNMF-SNS: powerful factorization-based multi-omics integration toolkit
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3509134.svg)](https://doi.org/10.5281/zenodo.3509134)
cNMF-SNS (consensus Non-negative Matrix Factorization Solution Network Space) is a Python package enabling integration of bulk, single-cell, and spatial expression data between and within datasets. cNMF provides a robust, unsupervised deconvolution of each dataset into gene expression programs (GEPs). Network-based integration of GEPs enables flexible integration of many datasets across assays (eg. Protein, RNA-Seq) and patient cohorts.
Communities with GEPs from multiple datasets can be annotated with dataset-specific annotations to facilitate interpretation.
⚡Main Features
Here are just a few of the things that cNMF-SNS does well:
- Integration of expression data does not require subsetting features/genes to a shared or 'overdispersed' subset
- Ideal for incremental integration (adding datasets one at a time) since deconvolution is performed independently on each dataset generating invariant GEPs
- Does not assume the same level of sparsity/depth (single-cell, bulk)
- Identifies interpretable, additive non-negative gene expression programs
- Two interfaces: command-line interface for rapid data exploration and python interface for extensibility and flexibility
🔧 Install
☁️ Public Release
Install the package with conda:
conda install -c conda-forge cnmfsns
✨ Latest version from GitHub
Before installing cNMF-SNS using pip, it is recommended to first set up a separate conda environment and have conda manage as many dependencies as possible.
conda create --name cnmfsns -c conda-forge python=3.10 anndata pandas numpy scipy matplotlib upsetplot httplib2 tomli tomli-w click pygraphviz python-igraph semantic_version pyyaml scikit-learn fastcluster scanpy pyyaml
conda activate cnmfsns
pip install git+https://github.com/MorrissyLab/cNMF-SNS.git
📖 Documentation
📓 Python interface tutorial
To get started, sample proteomics datasets and a Jupyter notebook tutorial is available here.
⌨️ Command line interface
See the command line interface documentation.
💭 Getting Help
For errors arising during use of cNMF-SNS, create and browse issues in the GitHub "issues" tab.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.