Search results for anything cardiovascular-related, either at the level of phenotype or disease.

Import results

res <- MultiEWCE::load_example_results()
## Registered S3 method overwritten by 'ggtree':
##   method         from     
##   fortify.igraph ggnetwork
res <- HPOExplorer:::annotate_phenos(phenos = res, 
                                     add_disease_data = TRUE, 
                                     add_hoverboxes = FALSE)
## Getting absolute ontology level for 2,831 HPO IDs.
## ℹ All local files already up-to-date!
## Adding term definitions.
## ℹ All local files already up-to-date!
## Adding level-3 ancestor to each HPO ID.
## ℹ All local files already up-to-date!
## Annotating phenos with n_diseases
## ℹ All local files already up-to-date!
## ℹ All local files already up-to-date!
## ℹ All local files already up-to-date!
## Annotating phenos with Onset.
## Annotating phenos with Disease
## ℹ All local files already up-to-date!
## Annotating phenos with AgeOfDeath.
## Annotating phenos with Tiers.
## Annotating phenos with Modifiers
## Annotating phenotype frequencies.
annot <- HPOExplorer::load_phenotype_to_genes(3)
## ℹ All local files already up-to-date!
genes <- HPOExplorer::load_phenotype_to_genes(1)
## ℹ All local files already up-to-date!

Filter results

First, we do some initial filtering of the results to only get significant associations.

res <- res[q<0.05 & symptom.pval<0.05,]
query <- c("cardio","heart")
res <- res[grepl(paste(query,collapse = "|"),definition,ignore.case = TRUE) |
             grepl(paste(query,collapse = "|"),DiseaseName,ignore.case = TRUE) |
             grepl(paste(query,collapse = "|"),ancestor_name,ignore.case = TRUE),]

message(length(unique(res$DatabaseID))," diseases.")
## 843 diseases.
message(length(unique(res$HPO_ID))," phenotypes.")
## 252 phenotypes.
message(length(unique(res$HPO_ID.LinkID))," symptoms")
## 5454 symptoms
message(length(unique(res$G))," genes")
## 0 genes

Prioritise targets

targets <- MultiEWCE::prioritise_targets(results = res, 
                                         keep_tiers = NULL,  
                                         severity_threshold = NULL,
                                         keep_onsets = NULL,
                                         keep_deaths = NULL,
                                         keep_celltypes = NULL, 
                                         symptom_p_threshold = 0.05,
                                         keep_evidence = 6)
## Prioritising gene targets.
## Adding HPO IDs.
## ℹ All local files already up-to-date!
## Translating all phenotypes to HPO IDs.
## ℹ All local files already up-to-date!
## + Returning a vector of phenotypes (same order as input).
## ℹ All local files already up-to-date!
## Adding term definitions.
## ℹ All local files already up-to-date!
## Adding disease metadata: Definitions, Preferred.Label
## Importing Orphanet metadata.
## Importing OMIM metadata.
## 830 / 1260 (65.87%) DiseaseName missing.
## 448 / 843 (53.14%) Definitions missing.
## Annotating phenos with MONDO metadata.
## ℹ All local files already up-to-date!
## 1 / 843 (0.12%) MONDO_ID missing.
## 774 / 843 (91.81%) MONDO_name missing.
## 832 / 843 (98.7%) MONDO_definition missing.
## 441 / 843 (52.31%) Definitions missing.
## Prioritised targets: step='start' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Filtering @ q-value <= 0.05
## Prioritised targets: step='q_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Filtering @ fold-change >= 1
## Prioritised targets: step='fold_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='symptom_p_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='symptom_intersection_size_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Annotating phenos with AgeOfDeath.
## Prioritised targets: step='keep_deaths' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Adding level-3 ancestor to each HPO ID.
## Removing remove descendants of: 'Clinical course'
## Translating all phenotypes to HPO IDs.
## + Returning a dictionary of phenotypes (different order as input).
## Prioritised targets: step='remove_descendants' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='keep_ont_levels' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='keep_onsets' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='keep_tiers' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Annotating phenos with Modifiers
## Prioritised targets: step='severity_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='severity_threshold_max' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='pheno_ndiseases_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='pheno_frequency_threshold' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Prioritised targets: step='keep_celltypes' 
##  - Rows: 7,810 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39
## Converting phenos to GRanges.
## Loading required namespace: ensembldb
## Gathering metadata for 1199 unique genes.
## Loading required namespace: EnsDb.Hsapiens.v75
## Prioritised targets: step='symptom_gene_overlap' 
##  - Rows: 22,626 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39 
##  - Genes: 1,199
## Prioritised targets: step='symptom_gene_overlap' 
##  - Rows: 22,626 
##  - Phenotypes: 252 
##  - Diseases: 843 
##  - Cell types: 39 
##  - Genes: 1,199
## Filtering by gene-disease association evidence.
## Annotating gene-disease associations with Evidence score
## Gathering data from GenCC.
## Importing cached file.
## Prioritised targets: step='keep_evidence' 
##  - Rows: 248 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Filtering by gene size.
## 29 / 29 genes kept.
## Prioritised targets: step='gene_size' 
##  - Rows: 248 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Prioritised targets: step='keep_biotypes' 
##  - Rows: 248 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Annotating gene frequencies.
## ℹ All local files already up-to-date!
## Prioritised targets: step='gene_frequency_threshold' 
##  - Rows: 265 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Prioritised targets: step='keep_specificity_quantiles' 
##  - Rows: 265 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Prioritised targets: step='keep_mean_exp_quantiles' 
##  - Rows: 265 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29
## Sorting rows.
## Prioritised targets: step='end' 
##  - Rows: 265 
##  - Phenotypes: 56 
##  - Diseases: 33 
##  - Cell types: 14 
##  - Genes: 29

Visualise targets

Default layout

vn <- MultiEWCE::prioritise_targets_network(top_targets = targets$top_targets,
                                            submain = "Cardiovascular targets network", 
                                            save_path = here::here("networks/cardiovascular_network.html"))
## Loading required namespace: pals
## Loading required namespace: igraph
## Loading required namespace: tidygraph
## Creating network.
## Loading required namespace: visNetwork
## Creating plot.
## Saving plot ==> /Users/schilder/Desktop/ewce/RareDiseasePrioritisation/networks/cardiovascular_network.html

Hierarchical layout

vn <- MultiEWCE::prioritise_targets_network(top_targets = targets$top_targets,
                                            submain = "Cardiovascular targets network",
                                            layout = "layout_with_sugiyama",
                                            save_path = here::here("networks/cardiovascular_hierarchical_network.html"))
## Creating network.
## Creating plot.
## Saving plot ==> /Users/schilder/Desktop/ewce/RareDiseasePrioritisation/networks/cardiovascular_hierarchical_network.html

Session info

sessionInfo()
## R version 4.2.1 (2022-06-23)
## Platform: x86_64-apple-darwin17.0 (64-bit)
## Running under: macOS Big Sur ... 10.16
## 
## Matrix products: default
## BLAS:   /Library/Frameworks/R.framework/Versions/4.2/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.2/Resources/lib/libRlapack.dylib
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## loaded via a namespace (and not attached):
##   [1] utf8_1.2.3                    R.utils_2.12.2               
##   [3] tidyselect_1.2.0              RSQLite_2.3.1                
##   [5] AnnotationDbi_1.60.2          htmlwidgets_1.6.2            
##   [7] grid_4.2.1                    BiocParallel_1.32.6          
##   [9] munsell_0.5.0                 codetools_0.2-19             
##  [11] colorspace_2.1-0              Biobase_2.58.0               
##  [13] filelock_1.0.2                knitr_1.42                   
##  [15] rstudioapi_0.14               orthogene_1.5.3              
##  [17] stats4_4.2.1                  SingleCellExperiment_1.20.1  
##  [19] ggsignif_0.6.4                gitcreds_0.1.2               
##  [21] MatrixGenerics_1.10.0         httr2_0.2.2                  
##  [23] GenomeInfoDbData_1.2.9        bit64_4.0.5                  
##  [25] rprojroot_2.0.3               coda_0.19-4                  
##  [27] vctrs_0.6.2                   treeio_1.23.1                
##  [29] generics_0.1.3                xfun_0.39                    
##  [31] timechange_0.2.0              BiocFileCache_2.6.1          
##  [33] R6_2.5.1                      GenomeInfoDb_1.34.9          
##  [35] pals_1.7                      AnnotationFilter_1.22.0      
##  [37] bitops_1.0-7                  cachem_1.0.8                 
##  [39] gridGraphics_0.5-1            DelayedArray_0.24.0          
##  [41] promises_1.2.0.1              BiocIO_1.8.0                 
##  [43] scales_1.2.1                  gtable_0.3.3                 
##  [45] tidygraph_1.2.3               ontologyPlot_1.6             
##  [47] ensembldb_2.22.0              rlang_1.1.1                  
##  [49] rtracklayer_1.58.0            rstatix_0.7.2                
##  [51] lazyeval_0.2.2                dichromat_2.0-0.1            
##  [53] broom_1.0.4                   BiocManager_1.30.20          
##  [55] yaml_2.3.7                    reshape2_1.4.4               
##  [57] HPOExplorer_0.99.9            abind_1.4-5                  
##  [59] GenomicFeatures_1.50.4        ggnetwork_0.5.12             
##  [61] backports_1.4.1               httpuv_1.6.9                 
##  [63] tools_4.2.1                   ggplotify_0.1.0              
##  [65] statnet.common_4.8.0          ggplot2_3.4.2                
##  [67] ellipsis_0.3.2                gplots_3.1.3                 
##  [69] jquerylib_0.1.4               paintmap_1.0                 
##  [71] RColorBrewer_1.1-3            BiocGenerics_0.44.0          
##  [73] Rcpp_1.0.10                   plyr_1.8.8                   
##  [75] visNetwork_2.1.2              progress_1.2.2               
##  [77] zlibbioc_1.44.0               purrr_1.0.1                  
##  [79] RCurl_1.98-1.12               prettyunits_1.1.1            
##  [81] ggpubr_0.6.0                  S4Vectors_0.36.2             
##  [83] SummarizedExperiment_1.28.0   grr_0.9.5                    
##  [85] here_1.0.1                    fs_1.6.2                     
##  [87] magrittr_2.0.3                data.table_1.14.8            
##  [89] gh_1.4.0                      ProtGenerics_1.30.0          
##  [91] matrixStats_0.63.0            hms_1.1.3                    
##  [93] patchwork_1.1.2               mime_0.12                    
##  [95] evaluate_0.20                 xtable_1.8-4                 
##  [97] XML_3.99-0.14                 EWCE_1.9.0                   
##  [99] IRanges_2.32.0                MultiEWCE_0.1.4              
## [101] compiler_4.2.1                biomaRt_2.54.1               
## [103] maps_3.4.1                    tibble_3.2.1                 
## [105] KernSmooth_2.23-21            crayon_1.5.2                 
## [107] R.oo_1.25.0                   htmltools_0.5.5              
## [109] ggfun_0.0.9                   later_1.3.1                  
## [111] tidyr_1.3.0                   aplot_0.1.10                 
## [113] lubridate_1.9.2               DBI_1.1.3                    
## [115] ExperimentHub_2.6.0           gprofiler2_0.2.1             
## [117] dbplyr_2.3.2                  rappdirs_0.3.3               
## [119] EnsDb.Hsapiens.v75_2.99.0     babelgene_22.9               
## [121] Matrix_1.5-4                  car_3.1-2                    
## [123] piggyback_0.1.4               cli_3.6.1                    
## [125] R.methodsS3_1.8.2             igraph_1.4.2                 
## [127] parallel_4.2.1                GenomicRanges_1.50.2         
## [129] pkgconfig_2.0.3               GenomicAlignments_1.34.1     
## [131] plotly_4.10.1                 xml2_1.3.4                   
## [133] ggtree_3.6.2                  bslib_0.4.2                  
## [135] XVector_0.38.0                GeneOverlap_1.34.0           
## [137] yulab.utils_0.0.6             stringr_1.5.0                
## [139] digest_0.6.31                 graph_1.76.0                 
## [141] Biostrings_2.66.0             rmarkdown_2.21               
## [143] HGNChelper_0.8.1              tidytree_0.4.2               
## [145] restfulr_0.0.15               curl_5.0.0                   
## [147] shiny_1.7.4                   Rsamtools_2.14.0             
## [149] gtools_3.9.4                  rjson_0.2.21                 
## [151] lifecycle_1.0.3               nlme_3.1-162                 
## [153] jsonlite_1.8.4                carData_3.0-5                
## [155] network_1.18.1                mapproj_1.2.11               
## [157] viridisLite_0.4.2             limma_3.54.2                 
## [159] fansi_1.0.4                   pillar_1.9.0                 
## [161] ontologyIndex_2.10            lattice_0.21-8               
## [163] homologene_1.4.68.19.3.27     KEGGREST_1.38.0              
## [165] fastmap_1.1.1                 httr_1.4.5                   
## [167] interactiveDisplayBase_1.36.0 glue_1.6.2                   
## [169] RNOmni_1.0.1                  png_0.1-8                    
## [171] ewceData_1.7.1                BiocVersion_3.16.0           
## [173] bit_4.0.5                     Rgraphviz_2.42.0             
## [175] stringi_1.7.12                sass_0.4.6                   
## [177] blob_1.2.4                    AnnotationHub_3.6.0          
## [179] caTools_1.18.2                memoise_2.0.1                
## [181] dplyr_1.1.2                   ape_5.7-1