Skip to content

jyyulab/scMINER

Repository files navigation

scMINER (single-cell Mutual Information-based Network Engineering Ranger) is a mutual information-based framework for single cell RNA-seq data analysis. It includes the following key functions:

  • Mutual information-based clustering: scMINER measures the cell-cell similarities with full feature-derived mutual information. It can catch both linear and non-linear correlations and performs better in cell clustering, especially for those of close states.

  • Gene activity estimation: scMINER rewires the cell-type specific gene networks solely from the scRNA-seq data, and then estimates the gene activities of not only transcription factors (TFs) but also signaling genes (SIGs). The gene activity-based analysis can expose the main regulators of various biological activities, like cellular linage differentiation and tissue specificity.

  • SparseEset-centered full-feature tool: scMINER provides a wide range of functions for data intake, quality control and filtration, MI-based clustering, network inference, gene activity estimation, cell type annotation, differential expression/activity analysis, and data visualization and sharing. Most of these functions are developed in an object-oriented manner for the SparseEset object.

Installation

scMINER framework is mainly developed with R for its advantages in statistical analysis and data visualization. It also includes two components, MICA and SJARACNe, that are developed with Python to take its strengths in calculation speed and memory consumption, since mutual information estimation of large-scale scRNA-seq data is usually compute-intensive.

Please install all three software for the full access to scMINER framework.

Install scMINER R package

The scMINER R package requires R 4.2.3 or newer, and can be installed from GitHub with:

# install.packages("devtools")
devtools::install_github("jyyulab/scMINER")

Install MICA and SJARACNe

The recommended method to install MICA and SJARACNe is to use conda dependency manager:

## setup conda env
conda create -n scminer python=3.9.2                # Create a python virtual environment
source activate scminer                             # Activate the virtual environment

## install MICA
git clone https://github.com/jyyulab/MICA           # Clone the MICA repo
cd MICA                                             # Switch to the MICA root directory
pip install .                                       # Install MICA and its dependencies
mica -h                                             # Check if MICA works

## install SJARACNE
cd ..                                               # Switch to conda env folder
git clone https://github.com/jyyulab/SJARACNe.git   # Clone the SJARACNe repo
cd SJARACNe                                         # Switch to the MICA root directory
python setup.py build                               # Build SJARACNe binary
python setup.py install                             # Build SJARACNe binary
sjaracne -h                                         # Check if SJARACNe works

Tutorial

Read the documentation for detailed installation instruction and guided analysis.

If you’d like to contribute, please open an issue or a pull request in the github repository.