|
a/README.md |
|
b/README.md |
1 |
# HuMMuS <img src="man/figures/hummus_logo.png" align="right" width="180"/> |
1 |
# HuMMuS <img src="man/figures/hummus_logo.png?format=true" align="right" width="180"/> |
2 |
|
2 |
|
3 |
 |
3 |

|
4 |
[](https://github.com/cantinilab/HuMMuS/actions/workflows/pages/pages-build-deployment?theme=flickr) |
4 |
[](https://github.com/cantinilab/HuMMuS/actions/workflows/pages/pages-build-deployment?theme=flickr)
|
5 |
[](https://img.shields.io/pypi/v/hummuspy?color=pink) |
5 |
[](https://img.shields.io/pypi/v/hummuspy?color=pink) |
6 |
|
6 |
|
7 |
### Heterogeneous Multilayer network for Multi-omics Single-cell data |
7 |
### Heterogeneous Multilayer network for Multi-omics Single-cell data |
8 |
|
8 |
|
9 |
HuMMuS exploits multi-omics single-cell measurements to infer numerous regulatory mechanisms. |
9 |
HuMMuS exploits multi-omics single-cell measurements to infer numerous regulatory mechanisms.
|
10 |
Inter-omics (e.g. peak-gene, TF-peak) and intra-omics interactions (e.g. peak-peak, gene-gene, TF-TF) are considered to capture both regulatory interactions and macromolecule cooperations. |
10 |
Inter-omics (e.g. peak-gene, TF-peak) and intra-omics interactions (e.g. peak-peak, gene-gene, TF-TF) are considered to capture both regulatory interactions and macromolecule cooperations. |
11 |
|
11 |
|
12 |
## Overview |
12 |
## Overview |
13 |
|
13 |
|
14 |
The current outputs available from HuMMuS are |
14 |
The current outputs available from HuMMuS are |
15 |
|
15 |
|
16 |
* gene regulatory networks (GRNs) |
16 |
* gene regulatory networks (GRNs)
|
17 |
* enhancers |
17 |
* enhancers
|
18 |
* TF - DNA binding regions |
18 |
* TF - DNA binding regions
|
19 |
* TF - target genes. |
19 |
* TF - target genes. |
20 |
|
20 |
|
21 |
#### [Read our publication](https://academic.oup.com/bioinformatics/advance-article/doi/10.1093/bioinformatics/btae143/7625061) for more details ! |
21 |
#### [Read our publication](https://academic.oup.com/bioinformatics/advance-article/doi/10.1093/bioinformatics/btae143/7625061) for more details !
|
22 |
<img src="man/figures/Fig_0001.jpg" align="center" width="1000"/> |
22 |
<img src="man/figures/Fig_0001.jpg" align="center" width="1000"/> |
23 |
|
23 |
|
24 |
### **scRNA + scATAC** |
24 |
### **scRNA + scATAC**
|
25 |
Like most of the current state-of-the-art methods to infer GRN, we propose a minimal version of HuMMuS based on scRNA-seq + scATAC-seq data (paired or **unpaired**). |
25 |
Like most of the current state-of-the-art methods to infer GRN, we propose a minimal version of HuMMuS based on scRNA-seq + scATAC-seq data (paired or **unpaired**). |
26 |
|
26 |
|
27 |
### **Use of additional modalities** |
27 |
### **Use of additional modalities**
|
28 |
HuMMuS has been developed to be extendable to any additional biological modality of interest. |
28 |
HuMMuS has been developed to be extendable to any additional biological modality of interest.
|
29 |
It is then possible to add any additional network to an already **existing modality** (e.g. both prior-knowledge network and data-driven network of genes), or from a **new modality** (e.g. adding epigenetic or proteomic networks). |
29 |
It is then possible to add any additional network to an already **existing modality** (e.g. both prior-knowledge network and data-driven network of genes), or from a **new modality** (e.g. adding epigenetic or proteomic networks).
|
30 |
<br>_For now, such personalisation requires to use directly some hummuspy (python package) functions at the end of the pipeline and write some configuration files manually. It will be simplified soon !_ |
30 |
<br>_For now, such personalisation requires to use directly some hummuspy (python package) functions at the end of the pipeline and write some configuration files manually. It will be simplified soon !_ |
31 |
|
31 |
|
32 |
## Tutorials/Vignettes |
32 |
## Tutorials/Vignettes |
33 |
|
33 |
|
34 |
* [**Infer a gene regulatory network and other outputs from unpaired/paired scRNA+scATAC data**](https://cantinilab.github.io/HuMMuS/articles/chen_vignette.html) shows the application of HuMMuS to the Chen dataset, used in the benchmark of [HuMMuS publication](https://academic.oup.com/bioinformatics/advance-article/doi/10.1093/bioinformatics/btae143/7625061). |
34 |
* [**Infer a gene regulatory network and other outputs from unpaired/paired scRNA+scATAC data**](https://cantinilab.github.io/HuMMuS/articles/chen_vignette.html) shows the application of HuMMuS to the Chen dataset, used in the benchmark of [HuMMuS publication](https://academic.oup.com/bioinformatics/advance-article/doi/10.1093/bioinformatics/btae143/7625061). |
35 |
|
35 |
|
36 |
## Installation |
36 |
## Installation
|
37 |
HuMMuS is for now ready only in R but requires some python dependencies (hummuspy). |
37 |
HuMMuS is for now ready only in R but requires some python dependencies (hummuspy). |
38 |
|
38 |
|
39 |
### HuMMuS python dependency |
39 |
### HuMMuS python dependency
|
40 |
Python package **hummuspy** should preferably be installed using pip (from the terminal in a conda environment for e.g) |
40 |
Python package **hummuspy** should preferably be installed using pip (from the terminal in a conda environment for e.g)
|
41 |
```r |
41 |
```r
|
42 |
conda create -n hummuspy_env python |
42 |
conda create -n hummuspy_env python
|
43 |
conda activate hummuspy_env |
43 |
conda activate hummuspy_env
|
44 |
pip install hummuspy |
44 |
pip install hummuspy
|
45 |
``` |
45 |
``` |
46 |
|
46 |
|
47 |
Alternatively, you can also install it directly from R using the reticulate package: |
47 |
Alternatively, you can also install it directly from R using the reticulate package:
|
48 |
```r |
48 |
```r
|
49 |
library(reticulate) |
49 |
library(reticulate)
|
50 |
py_install("hummuspy", envname = "r-reticulate", method="auto") |
50 |
py_install("hummuspy", envname = "r-reticulate", method="auto")
|
51 |
``` |
51 |
``` |
52 |
|
52 |
|
53 |
### HuMMuS R package |
53 |
### HuMMuS R package
|
54 |
Core R package can be installed directly from R: |
54 |
Core R package can be installed directly from R:
|
55 |
```r |
55 |
```r
|
56 |
devtools::install_github("cantinilab/HuMMuS", ref="dev_SeuratV5") |
56 |
devtools::install_github("cantinilab/HuMMuS", ref="dev_SeuratV5") |
57 |
|
57 |
|
58 |
# If you only work SeuratV4, you can also use main branch that will soon be deprecated |
58 |
# If you only work SeuratV4, you can also use main branch that will soon be deprecated
|
59 |
#devtools::install_github("cantinilab/HuMMuS") |
59 |
#devtools::install_github("cantinilab/HuMMuS")
|
60 |
``` |
60 |
``` |
61 |
|
61 |
|
62 |
Before running HuMMuS, if you're using multiple conda environment you need to make sure to that reticulate points toward the one where hummuspy is installed. You can precise it at the beginning of your code : |
62 |
Before running HuMMuS, if you're using multiple conda environment you need to make sure to that reticulate points toward the one where hummuspy is installed. You can precise it at the beginning of your code :
|
63 |
```r |
63 |
```r
|
64 |
library(reticulate) |
64 |
library(reticulate)
|
65 |
# Using a specific conda environment |
65 |
# Using a specific conda environment
|
66 |
envname = "hummuspy_env" # or "r-reticulate" for e.g. |
66 |
envname = "hummuspy_env" # or "r-reticulate" for e.g.
|
67 |
use_condaenv(envname, required = TRUE) |
67 |
use_condaenv(envname, required = TRUE)
|
68 |
``` |
68 |
```
|
69 |
For more details on how to setup the reticulate connection, |
69 |
For more details on how to setup the reticulate connection,
|
70 |
see: https://rstudio.github.io/reticulate |
70 |
see: https://rstudio.github.io/reticulate |
71 |
|
71 |
|
72 |
### scATAC processing |
72 |
### scATAC processing
|
73 |
To compute directly the scATAC data with HuMMuS, we currently only propose to use [Cicero](https://cole-trapnell-lab.github.io/cicero-release/docs_m3/). It requires the version running with [Monocle3](https://cole-trapnell-lab.github.io/monocle3/). |
73 |
To compute directly the scATAC data with HuMMuS, we currently only propose to use [Cicero](https://cole-trapnell-lab.github.io/cicero-release/docs_m3/). It requires the version running with [Monocle3](https://cole-trapnell-lab.github.io/monocle3/).
|
74 |
You then need to install both [Monocle3](https://cole-trapnell-lab.github.io/monocle3/docs/installation/), and Cicero: |
74 |
You then need to install both [Monocle3](https://cole-trapnell-lab.github.io/monocle3/docs/installation/), and Cicero: |
75 |
|
75 |
|
76 |
```r |
76 |
```r
|
77 |
devtools::install_github("cole-trapnell-lab/monocle3") |
77 |
devtools::install_github("cole-trapnell-lab/monocle3")
|
78 |
devtools::install_github("cole-trapnell-lab/cicero-release", ref = "monocle3") |
78 |
devtools::install_github("cole-trapnell-lab/cicero-release", ref = "monocle3")
|
79 |
``` |
79 |
```
|
80 |
*If you encounter some troubles with Monocle3 installation, on ubuntu you can try to run: `sudo apt-get install libgdal-dev libgeos-dev libproj-dev`. You can also go on [their github page](https://github.com/cole-trapnell-lab/monocle3/issues) for more help. Having a previous version of Monocle (1 or 2) still in your R session can cause some troubles. If you encounter some even after restarting your R session,, try to `remove.packages("monocle")` before to reinstall both Monocle**3** and Cicero* |
80 |
*If you encounter some troubles with Monocle3 installation, on ubuntu you can try to run: `sudo apt-get install libgdal-dev libgeos-dev libproj-dev`. You can also go on [their github page](https://github.com/cole-trapnell-lab/monocle3/issues) for more help. Having a previous version of Monocle (1 or 2) still in your R session can cause some troubles. If you encounter some even after restarting your R session,, try to `remove.packages("monocle")` before to reinstall both Monocle**3** and Cicero* |
81 |
|
81 |
|
82 |
## Data accessibility |
82 |
## Data accessibility |
83 |
|
83 |
|
84 |
To reproduce HuMMuS results presented in the manuscript, preprocessed data [are accessible here](https://figshare.com/projects/Molecular_mechanisms_reconstruction_from_single-cell_multi-omics_data_with_HuMMuS/168899) |
84 |
To reproduce HuMMuS results presented in the manuscript, preprocessed data [are accessible here](https://figshare.com/projects/Molecular_mechanisms_reconstruction_from_single-cell_multi-omics_data_with_HuMMuS/168899)
|
85 |
<br> For quick tests, the Chen dataset preprocessed is accessible directly through the package as a Seurat object: `load(chen_dataset)`, along with a subset version `load(chen_dataset_subset)`. |
85 |
<br> For quick tests, the Chen dataset preprocessed is accessible directly through the package as a Seurat object: `load(chen_dataset)`, along with a subset version `load(chen_dataset_subset)`. |
86 |
|
86 |
|
87 |
## Cite us |
87 |
## Cite us
|
88 |
Trimbour R., Deutschmann I. M., Cantini L. Molecular mechanisms reconstruction from single-cell multi-omics data with HuMMuS. Bioinformatics (2024), btae143. doi: https://doi.org/10.1093/bioinformatics/btae143 |
88 |
Trimbour R., Deutschmann I. M., Cantini L. Molecular mechanisms reconstruction from single-cell multi-omics data with HuMMuS. Bioinformatics (2024), btae143. doi: https://doi.org/10.1093/bioinformatics/btae143
|