MLG is an integrative clustering approach for single cell RNA-seq data across multiple experimental conditions. MLG takes multiple low-dimensional embedding data of gene expression matrix as input, e.g. low dimension embeddings from dimension reduction methods like PCA, cNMF, or from data integration methods like Seurat, Liger. It constructs a multi-layer shared nearest neighbor (SNN) graph from these low-dimensional embeddings and performs Louvain graph partitioning algorithm.
The vignettes of mlg package depend on R package Liger (Linked Inference of Genomic Experimental Relationships) and Seurat. After installing dependencies, you can install mlg with the following commend:
devtools::install_github('shanlu01/mlg')
- Perform MLG clustering
mlg_cluster(
factor.list,
cluster.resolution
)
- Visualize the MLG graph through force directed layout.
mlg_visualization(
factor.list,
label
)
Argument factor.list is a list variable containing low dimensional embedding data, for example let factor.list = list(PCA_factors, cNMF_factors). cluster.resolution is the resolution in modularity maximization. A larger resolution number will lead to more clusters. Argument label in mlg_visulization is the color labeling to be imposed on the figure. For example, to visualize clustering result, we can specify label = clusters.
The package is developed in Keles Research Group at University of Wisconsin - Madison. Please contact Shan Lu (slu92@wisc.edu) or open an issue in the github repository for any question and suggestion.