-
Notifications
You must be signed in to change notification settings - Fork 2
/
README.Rmd
210 lines (137 loc) · 6.51 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
---
title: "CONQUER"
date: "`r format(Sys.time(), '%d %B, %Y')`"
author: Gerard Bouland, Joline Beulens, Joey Nap, Arno van der Slik, Arnaud Zaldumbide, Leen ’t Hart and Roderick Slieker
output:
github_document:
toc: true
toc_depth: 4
number_sections: true
#theme: united
editor_options:
chunk_output_type: console
---
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/CONQUER.png" align="right" width="120" />
```{r, echo = FALSE}
knitr::opts_knit$set(root.dir = "D:/001_Projects/010_CONQUER_TEST/Test/")
```
## Change log
*v.1.1.3*
- Added support for different P-value cut-offs in multi-analyze (see below)
*v.1.1.2*
- Allow users to use precalculated SNPs in GTEx instead of calculating them all.
- Added overlap tab of QTL to show overlap between types of QTLs
## Installation
### Install the depencies
```{r, eval=FALSE}
depp <- c("BioCircos","cluster","ggplot2","enrichR","htmlwidgets",
"rio","shiny","shinycssloaders","stringr","viridis",
"DT","coloc","curl","dplyr","grDevices","jsonlite","plotly",
"shinyjs","reshape2","shinythemes","stats","purrr","readr","UpSetR")
BioDepp <- c("IRanges","BiocGenerics","clusterProfiler","GenomicRanges")
# Check present packages
depp.new<-depp[!(depp%in%installed.packages())]
if (length(depp.new)) {
install.packages(depp.new)
}
# Bioconductor
BioDepp.new<-BioDepp[!(BioDepp%in%installed.packages())]
if (length(BioDepp.new)) {
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install(BioDepp, type="source")
}
# load packages
sapply(depp, library, character.only = TRUE)
sapply(BioDepp, library, character.only = TRUE)
```
### Install CONQUER
Install the the development version from GitLab:
`install.packages("devtools")`
```{r, eval = FALSE}
# Install CoNQUER.db
install.packages("https://github.com/roderickslieker/CONQUER.db/releases/download/v0.1.2/conquer.db_0.1.2.tar.gz", type="source", repos=NULL)
devtools::install_github("roderickslieker/GTEx.Data")
#Install other two dependencies
devtools::install_github("roderickslieker/CONQUER.d3")
devtools::install_github("roderickslieker/CONQUER")
```
## Overview
With the use of two functions, SNPs are summarised and visualised, namely: `summarise()` and `visualise()`.
* The `summarise()` function is used to collect all data related to SNPs.
* The `visualise()` function initiates a RStudio Shiny-based dashboard that visualises all relevant plots.
Note: We use the LD data from the API of NIH. You will need to register on the site to obtain a token. Please see:
https://ldlink.nci.nih.gov/?tab=apiaccess
The token is send by email and can be provided as character string.
## Note on `precalculated` argument
To also allow faster pre-process of SNPs, we also allow users to only take the precalculated eQTLs from GTEx. Pros: much faster to summarize. Cons: you will miss interesting QTLs from your results because GTEx only includes genes with TSSs 1Mb from the SNP. So, when precalculated is `FALSE` the GTEx API will be used to test the lead SNP against genes in cis and trans.
## Note on `pcutoff` argument
Given that the numbers of individuals per tissue vary in GTEx one may be interested to analyse the data with a more liberal P-value to adjust for the strong correlation between the number of eQTLs and the number of individuals in that dataset. As such the package allows to analyze with three different settings:
- `stringent` : only allow eQTLs that match the pValue threshold as defined by GTEx for SNP
- `liberal` : P<0.001 and P-value at max 2x higher than GTEx's threshold.
- `veryliberal` : All eQTLs that are nominally significant P<0.05.
## Note on multianalyze
Multianalyze works best if the number of SNPs is large (for example >50 SNPs). Lower numbers may result in spurious results. Instead one should focus on the single SNPs.
## Citation
**CONQUER: an interactive toolbox to understand functional consequences of GWAS hits.**
Gerard A Bouland, Joline W J Beulens, Joey Nap, Arno R van der Slik, Arnaud Zaldumbide, Leen M ’t Hart, Roderick C Slieker
*NAR Genomics and Bioinformatics, Volume 2, Issue 4, December 2020, lqaa085, https://doi.org/10.1093/nargab/lqaa085*
## Example without multianalyze
```{r, message=F, eval=F}
DIR <- "somedirectory"
library(CONQUER)
summarize(variants = c("rs878521","rs10830963"),
directory=DIR,
precalculated = TRUE,
multiAnalyze=FALSE,
token="sometoken",
tissues=NULL)
```
## Example with multianalyze
The available tissues can be viewed with the following command:
```{r, eval=F}
tissues <- conquer.db::gtexTissuesV8
```
The summary files from the example below can also be obtained from https://github.com/roderickslieker/CONQUER.test/tree/master/Test
```{r, message=F, eval=F}
library(CONQUER)
snps <- c("rs11642430","rs11820019","rs11842871","rs13426680","rs1377807","rs1783541",
"rs1801212","rs1801645","rs2268078","rs2581787","rs34855406","rs3802177",
"rs3810291","rs4148856","rs5213","rs6011155","rs601945","rs75423501",
"rs8010382","rs8046545")
CONQUER::summarize(variants = snps,
directory=DIR,
multiAnalyze=TRUE,
precalculated = TRUE,
token=NULL,
tissues=c("Pancreas","Muscle_Skeletal","Liver"))
visualize(directory = "somedirectory", SNPs = snps)
```
## Figure examples
### Modules
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/SunBurst_pathways.png" align="center" width="500" />
### Enrichment
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/Modules_pathways.png" align="center" width="500" />
### Pathways shared by tissues
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/Pathways_acrossTissue.png" align="center" width="500" />
### LD
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/LD_rs11642430.png" align="center" width="500" />
### Chromosomal interactions
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/Chromosomal_interactions.png" align="center" width="500" />
### Chromatin states
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/Chromatin_states.png" align="center" width="500" />
### eQTLs
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/eQTLs.png" align="center" width="500" />
### Gene expression
<img src="https://github.com/roderickslieker/CONQUER.test/blob/master/Expression.png" align="center" width="500" />