Skip to content

Commit

Permalink
Merge pull request #14 from saezlab/revisions2021
Browse files Browse the repository at this point in the history
Revisions2021
  • Loading branch information
rosherbal authored Jan 18, 2022
2 parents 2b09009 + 6ca1ffb commit 8e29a03
Show file tree
Hide file tree
Showing 29 changed files with 21,376 additions and 160 deletions.
2 changes: 2 additions & 0 deletions FUNKI/data/examples/carnival_dorothea_contrast.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
"IRF3","MYOD1","NCOA2","NR2F1"
3.95485866684819,0.98647441291566,1.29967223364204,2.98656807153296
2 changes: 2 additions & 0 deletions FUNKI/data/examples/carnival_dorothea_example.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
"","FOXM1","MYBL2","OTX2"
"1",3.42571262040981,0.868284393839793,-1.81747953870413
File renamed without changes.
20,189 changes: 20,189 additions & 0 deletions FUNKI/data/examples/multipleconditions_data.csv

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion FUNKI/data/examples/phospho_data.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"","contrast_1"
"ID_site","activity"
"AAK1_S637",1.22263245488
"AAK1_S678",-0.9508860477
"ABCF1_S109",0.201773218988
Expand Down
12 changes: 12 additions & 0 deletions FUNKI/data/models/carnival_PKN_contrast.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
source,interaction,target
NROb2,1,RXRB
CSNK2A2,1,CSNK2A1
RXRB,1,NR2F1
CSNK2A1,1,AKT
AKT,1,IKBKB
IKBKB,1,IRF3
IRBKB,1,EP300
EP300,1,MYOD1
EP300,1,NCOA2
EP300,1,NR4A1
NR4A1,1,NR2F1
13 changes: 13 additions & 0 deletions FUNKI/data/models/carnival_PKN_example.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
source,interaction,target
LHX1,1,OTX2
LHX9,-1,LHX1
FOXA2,-1,OTX2
AKT1,-1,FOXA2
TCL1B,1,AKT1
AKT1,1,CDK2
CDK2,1,MYBL2
CDK2,1,FOXM1
CDK2,-1,PAK1
PAK1,1,ELF3
ELF3,1,EHF
FMR1,1,PAK1
96 changes: 96 additions & 0 deletions FUNKI/data/reports/carnival_report.Rmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
title: "CARNIVAL Analysis Report"
output: html_document
params:
analysis_expl: ""
doro_custom: "**NOT** run."
organism: ""
minsize: ""
confidence_level: ""
method: ""
pro_custom: "**NOT** included in the analysis."
top: ""
perm: ""
omni: "**NOT** loaded."
targets: "**NOT** selected."
solver: "**NOT** selected"
pea_custom: "the enrichment part has **NOT** been run."
pea_explanation: ""
pea_expl_barplot: ""
pea_expl_volcano: ""
carnival_network: NA
barplot: NA
volcano: NA
active_pea: "FALSE"
---

[CARNIVAL](https://saezlab.github.io/CARNIVAL/) (CAusal Reasoning for Network identification using Integer VALue programming) reconstructs signalling networks from downstream TF activities by finding the upstream regulators ( [Liu et al., 2019](https://www.nature.com/articles/s41540-019-0118-z) ). Given a directed prior-knowledge network (PKN) of protein-protein interactions, which can also be signed, CARNIVAL identifies a subnetwork that explains the activities of transcription factors through potential perturbed intermediate genes.

### The analysis

`r params$analysis_expl`

**DoRotEA** (_measObj_) was `r params$doro_custom`

`r params$organism`

`r params$minsize`

`r params$confidence_level`

`r params$method`

**PROGENy** weights (_weightObj_) was `r params$pro_custom`

`r params$perm`
`r params$top`

The **network** (_netObj_) was `r params$omni`

The **perturbation nodes** (inputObj) were `r params$targets`

The selected **solver** was `r params$solver`.

#### The code

```{r, eval=FALSE}
carnival_result = runCARNIVAL( inputObj = iniciators,
measObj = tfList,
netObj = cNET,
weightObj = progenylist,
solverPath = solver$spath,
solver = solver$solver,
timelimit = 7200,
mipGAP = 0,
poolrelGAP = 0 )
```

### The results

#### Network visualisation

CARNIVAL produces a weigthed network that can be directly visualised.

```{r, echo=FALSE, fig.width=10}
params$carnival_network
```

#### Enrichment analysis

A pathway/set enrichment analysis can be run over the results.

For this analysis, `r params$pea_custom`

`r params$pea_explanation`

`r params$pea_expl_barplot`

```{r, echo=FALSE, fig.width=10, eval=as.logical(params$active_pea), error=FALSE, message=FALSE, warning=FALSE}
params$barplot
```

`r params$pea_expl_volcano`

```{r, echo=FALSE, eval=as.logical(params$active_pea), error=FALSE, message=FALSE, warning=FALSE}
params$volcano
```
47 changes: 47 additions & 0 deletions FUNKI/data/reports/cosmos_report.Rmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: "COSMOS Analysis Report"
output: html_document
params:
analysis_expl: ""
network: "**NOT** selected/loaded."
solver: "**NOT** selected."
layer1: "**NOT** selected."
layer2: "**NOT** selected."
cosmos_network: NA
---

COSMOS is a tool to integrate multiomic data with a prior knowledge network spanning signaling, gene regulation and metabolism ( [Dugourd et al. 2021](http://europepmc.org/abstract/MED/33502086) ). It uses the ILP formulation of CARNIVAL to connect two sets of upstream and downstream molecular features (e.i. kinase activities, TF activities, deregulated metabolites, enzyme fluxes, genetic or drug perturbations, etc…) with a signed directed transomic network.

This resulting network is essentially a set of coherent mechanistic hypotheses that can explain how the measured deregulation may explain each other. Subsets of this network centered on user-defined nodes can be viewed in the shiny app. The network can also be downloaded as a pair of sif and attribute csv files. These files can be imported in tools such as cytoscape to visualise the full network.

### The analysis

`r params$analysis_expl`

The **layer 1** was `r params$layer1`

The **layer 2** was `r params$layer2`

The **network** (_netObj_) was `r params$network`

The **solver** was `r params$solver`

#### The code

```{r, eval=FALSE}
cosmos <- run_COSMOS(layer_1 = layer_1,
layer_2 = layer_2,
RNA_data = data_vec,
PKN = PKN,
solver = input$solver_cosmos,
solver_path = solverpath_cosmos,
runtime = c(200,1000,200,1000))
```

### The results: Network visualisation

COSMOS produces a set of networks that can be directly visualised.

```{r, echo=FALSE, fig.width=10}
params$cosmos_network
```
81 changes: 81 additions & 0 deletions FUNKI/data/reports/dorothea_report.Rmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
---
title: "DoRothEA Analysis Report"
output: html_document
params:
minsize: NA
method: NA
selected_conf_level: NA
organism: NA
selected_tf: NA
selected_sample: NA
numberTFs: NA
sample_plot: NA
tf_plot: NA
network_plot: NA
heatmap_plot: NA
---

[DoRothEA](https://saezlab.github.io/DoRothEA/) (Discriminant Regulon Expression Analysis) is a resource that links transcription factors (TFs) with their downstream targets ([Garcia-Alonso et al., 2018, 2019](http://europepmc.org/abstract/MED/31340985)).
The unity of a TF and its targets is called regulon. The regulons are built from four different strategies:

(i) manually curated interaction repositories
(ii) interactions derived from ChIP-seq binding data
(iii) in silico predictions of TF binding on gene promoters
(iv) reverse-engineered regulons from gene expression datasets.

The TFs activities are computed from gene expression by performing an enrichment analysis ([Alvarez et al., 2016](https://www.nature.com/articles/ng.3593)), where the regulons are the underlying gene-sets.

### The analysis

The selected parameters:

- organism: `r params$organism`
- min size: `r params$minsize`
- method: `r params$method`
- confidence level: `r paste(params$selected_conf_level, collapse = ",")`

The code:

```{r, eval=FALSE}
regulons <- dorothea_regulon %>%
dplyr::filter(confidence %in% params$selected_conf_level)
dorothea::run_viper(dorothea_matrix,
regulons,
options = list(minsize = minsize,
method = method,
eset.filter = FALSE,
cores = 1,
verbose = FALSE,
nes = TRUE))
```

### The results

The computation yields a matrix with the normalised enrichment scores for each TF across all samples.

The heatmap provides a comprehensive overview of all contrasts/samples.
This heatmap includes the top `r params$numberTFs` selected TFs for the sample **`r params$selected_sample`** compared with the rest of the samples.

```{r, echo=FALSE, fig.width=10}
params$heatmap_plot
```

The bar plots show the activity of **`r params$selected_tf`** for all given contrasts/samples;
and the top `r params$numberTFs` regulated TFs for sample **`r params$selected_sample`**.

```{r, echo=FALSE}
params$tf_plot
params$sample_plot
```

The interactions of `r params$selected_tf` with its targets is shown in a network plot for sample `r params$selected_sample`.

Blue nodes indicate that the target is over-expressed and red nodes indicate that the target is down-regulated. The color of the edges represent the effect of the TF on its target (either activation or repression). The number of shown nodes can be changed by the corresponding widget.

```{r, echo=FALSE}
params$network_plot
```

68 changes: 68 additions & 0 deletions FUNKI/data/reports/kinact_report.Rmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
title: "KinAct Analysis Report"
output: html_document
params:
minsize: NA
method: NA
organism: NA
selected_kinase: NA
selected_sample: NA
numberKinases: NA
sample_plot: NA
tf_plot: NA
network_plot: NA
heatmap_plot: NA
---

[KinAct](http://saezlab.github.io/kinact/) is a resource linking kinases to phosphorylation sites ( [Wirbel et al., 2018](https://link.springer.com/protocol/10.1007%2F978-1-4939-7493-1_6 ).
It is fully integrated into Omnipath due to the addition of kinase-substrate interaction resources ( [Türei et al., 2021, 2016](http://europepmc.org/abstract/MED/27898060) ).
Kinase activity estimation is performed using the same algorithm as DoRothEA to estimate activity scores ( [Alvarez et al., 2016](https://www.nature.com/articles/ng.3593) ). Instead of TF-target interactions, KinAct uses collections of kinase-substrate interactions and phosphoproteomic data instead of transcriptomic data.

### The analysis

The selected parameters:

- organism: `r params$organism`
- min size: `r params$minsize`
- method: `r params$method`

The code:

```{r, eval=FALSE}
dorothea::run_viper(kinase_matrix,
kinact_regulon_human,
options = list(minsize = minsize,
method = method,
eset.filter = FALSE,
cores = 1,
verbose = FALSE,
nes = TRUE))
```

### The results

The computation yields a matrix with the normalised enrichment scores for each Kinase across all samples.

The heatmap provides a comprehensive overview of all contrasts/samples.
This heatmap includes the top `r params$numberKinases` selected TFs for the sample **`r params$selected_sample`** compared with the rest of the samples.

```{r, echo=FALSE, fig.width=10}
params$heatmap_plot
```

The bar plots show the activity of **`r params$selected_kinase`** for all given contrasts/samples;
and the top `r params$numberKinases` regulated TFs for sample **`r params$selected_sample`**.

```{r, echo=FALSE}
params$tf_plot
params$sample_plot
```

The interactions of `r params$selected_kinase` with its targets is shown in a network plot for sample `r params$selected_sample`.

Blue nodes indicate that the target is over-expressed and red nodes indicate that the target is down-regulated. The color of the edges represent the effect of the TF on its target (either activation or repression). The number of shown nodes can be changed by the corresponding widget.

```{r, echo=FALSE}
params$network_plot
```
Loading

0 comments on commit 8e29a03

Please sign in to comment.