Data loading

suppressPackageStartupMessages({
  library(SummarizedExperiment)
  library(SEtools)
  library(edgeR)
  library(DT)
  library(pheatmap)
  library(plotly)
  library(dplyr)
  library(sva)
  library(msigdbr)
  library(reshape2)
  library(overlapper)
})
source("Functions/EDC_Functions.R")
source("Functions/CriFormatted.R")
load("Data/geneLengths.RData")
load("Data/AllSEcorrected.RData",verbose=T)
## Loading objects:
##   SEs
##   DEAs
load("Data/TotalSumExp.RData", verbose = T)
## Loading objects:
##   Total

Overlap DEGs long list and hormonal genes

load("Data/HormonalGenes/HormonalGenes.RData",verbose = T)
## Loading objects:
##   Thyroid
##   Androgen
##   Estrogen
##   Corticoid
##   Progesterone
##   PPAR
##   Retinoic
load("Data/HormonalGenes/HormonalTFs/TF.RData", verbose = T)
## Loading objects:
##   OrgTF
##   FetTF
##   TF
##   TFshort

uni <-rownames(filterGenes(Total))

degs.fe <- row.names(DEAs$chronic.fetal)[which(DEAs$chronic.fetal$FDR<=0.1)]
degs.org <- row.names(DEAs$chronic.org)[which(DEAs$chronic.org$FDR<=0.1 )]
degs <- list(Fetal=degs.fe, Organoids= degs.org, Both= union(degs.org,degs.fe))
TF <- list(Fetal=FetTF, Organoids= OrgTF, Both= union(OrgTF,FetTF))
hormonal <- list(Thyroid=Thyroid, Androgen=Androgen, Estrogen=Estrogen, Corticoid=Corticoid,Progesterone=Progesterone,PPAR=PPAR, Retinoic=Retinoic, All= union(Thyroid,union(Androgen, union(Estrogen,union(Corticoid, union(Progesterone,union(PPAR,Retinoic)))))))

m <- overlapper::multintersect(ll = degs, ll2 = hormonal, universe = uni,two.tailed = F)
dotplot.multintersect(m, sizeRange = c(0,15), th=0.05)

Overlap TFs and hormonal genes

#load("Data/regulon_weighted.RData", verbose = T)
ag <- readRDS("Data/psychencode_reduced.rds")

col <- c("low"="grey", "high"="yellow")
#uni <- as.character(names(regulon))
uni <- as.character(unique(ag$Transcription_Factor))
m <- overlapper::multintersect(TF, hormonal, universe = uni,two.tailed = F)
dotplot.multintersect(m, sizeRange = c(0,15), th=0.05,colors = col)

Heatmaps of hormonal DEGs

SEs$chronic.org <- SEs$chronic.org[,which(SEs$chronic.org$EXPO=="CNT"|SEs$chronic.org$EXPO=="1X" | SEs$chronic.org$EXPO=="1000X")]
SEs$chronic.fetal <- SEs$chronic.fetal[,which(SEs$chronic.fetal$EXPO=="CNT"|SEs$chronic.fetal$EXPO=="1X" | SEs$chronic.fetal$EXPO=="1000X")]

SEs <- list(chronic.org=SEs$chronic.org, chronic.fetal=SEs$chronic.fetal)

merged <- mergeSEs(SEs, use.assays = "corrected", commonOnly=T)

HormonalAll <- union(Thyroid,union(Androgen, union(Estrogen,union(Corticoid, union(Progesterone,union(PPAR,Retinoic))))))
degs<- union(degs.fe,degs.org)
TF<- union(FetTF,OrgTF)

crossHm(SEs, genes = intersect(degs,HormonalAll), do.scale = T,assayName = "corrected",  show_rownames = F, anno_columns = c("EXPO2"), name = "Endocrine Relevant DEGs")


load("Data/HormonalGenes/HormonalDEGs/HormonalDEGs.RData", verbose = T)
## Loading objects:
##   ThyroidDEGs
##   AndrogenDEGs
##   EstrogenDEGs
##   CorticoidDEGs
##   ProgesteroneDEGs
##   PPARDEGs
##   RetinoicDEGs

Heatmaps of Thyroid DEGs

crossHm(SEs, genes = ThyroidDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Thyroid DEGs")

Heatmaps of Androgen DEGs


crossHm(SEs, genes = AndrogenDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Androgen DEGs")

Heatmaps of Estrogen DEGs


crossHm(SEs, genes = EstrogenDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Estrogen DEGs")

Heatmaps of Corticoid DEGs


crossHm(SEs, genes = CorticoidDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Corticoid DEGs")

Heatmaps of PPAR DEGs


crossHm(SEs, genes = PPARDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "PPAR DEGs")

Heatmaps of Progesterone DEGs


crossHm(SEs, genes = ProgesteroneDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Progesterone DEGs")

Heatmaps of Retinoic DEGs


crossHm(SEs, genes = RetinoicDEGs, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Retinoic DEGs")

Heatmaps of hormonal Psychencode Transciprion Factors

load("Data/HormonalGenes/HormonalTFs/Psychencode/HormonalPsychencode.RData", verbose = T)
## Loading objects:
##   ThyroidTF
##   AndrogenTF
##   EstrogenTF
##   CorticoidTF
##   ProgesteroneTF
##   PPARTF
##   RetinoicTF


crossHm(SEs, genes = intersect(TF,HormonalAll), do.scale = T,assayName = "corrected",  show_rownames = F, anno_columns = c("EXPO2"), name = "Endocrine Relevant Transcription Factors")

Heatmaps of Thyroid TFs

crossHm(SEs, genes = ThyroidTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Thyroid Transcription Factors")

Heatmaps of Androgen TFs


crossHm(SEs, genes = AndrogenTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Androgen Transcription Factors")

Heatmaps of Estrogen TFs


crossHm(SEs, genes = EstrogenTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Estrogen Transcription Factors")

Heatmaps of Corticoid TFs


crossHm(SEs, genes = CorticoidTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Corticoid Transcription Factors")

Heatmaps of PPAR TFs


crossHm(SEs, genes = PPARTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "PPAR Transcription Factors")

Heatmaps of Progesterone TFs


crossHm(SEs, genes = ProgesteroneTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Progesterone Transcription Factors")

Heatmaps of Retinoic TFs


crossHm(SEs, genes = RetinoicTF, do.scale = T, assayName = "corrected",show_rownames = F, anno_columns = c("EXPO2"), name = "Retinoic Transcription Factors")

Data praparation

For details on data filtering, normalization, batch correction and differential expression analysis, see here

For details on the preparation of Hormonal pathways genes, see here


Authors

Nicolò Caporale: ,

Cristina Cheroni:

Pierre-Luc Germain:

Giuseppe Testa:

Lab: http://www.testalab.eu/

‘Date: December 01, 2021’

sessionInfo()
## R version 4.0.3 (2020-10-10)
## 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.0/Resources/lib/libRblas.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.0/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] parallel  stats4    stats     graphics  grDevices utils     datasets 
## [8] methods   base     
## 
## other attached packages:
##  [1] overlapper_0.99.1           reshape2_1.4.4             
##  [3] msigdbr_7.2.1               sva_3.38.0                 
##  [5] BiocParallel_1.24.1         genefilter_1.72.1          
##  [7] mgcv_1.8-34                 nlme_3.1-152               
##  [9] dplyr_1.0.5                 plotly_4.9.3               
## [11] ggplot2_3.3.3               pheatmap_1.0.12            
## [13] DT_0.17                     edgeR_3.32.1               
## [15] limma_3.46.0                SEtools_1.4.0              
## [17] SummarizedExperiment_1.20.0 Biobase_2.50.0             
## [19] GenomicRanges_1.42.0        GenomeInfoDb_1.26.2        
## [21] IRanges_2.24.1              S4Vectors_0.28.1           
## [23] BiocGenerics_0.36.0         MatrixGenerics_1.2.1       
## [25] matrixStats_0.58.0         
## 
## loaded via a namespace (and not attached):
##   [1] circlize_0.4.12        plyr_1.8.6             lazyeval_0.2.2        
##   [4] shinydashboard_0.7.1   splines_4.0.3          digest_0.6.27         
##   [7] foreach_1.5.1          htmltools_0.5.1.1      magick_2.6.0          
##  [10] fansi_0.4.2            magrittr_2.0.1         memoise_2.0.0         
##  [13] cluster_2.1.1          openxlsx_4.2.3         ComplexHeatmap_2.6.2  
##  [16] annotate_1.68.0        colorspace_2.0-0       blob_1.2.1            
##  [19] xfun_0.21              crayon_1.4.1           RCurl_1.98-1.2        
##  [22] jsonlite_1.7.2         survival_3.2-7         iterators_1.0.13      
##  [25] glue_1.4.2             registry_0.5-1         gtable_0.3.0          
##  [28] zlibbioc_1.36.0        XVector_0.30.0         UpSetR_1.4.0          
##  [31] GetoptLong_1.0.5       DelayedArray_0.16.1    V8_3.4.0              
##  [34] shape_1.4.5            scales_1.1.1           futile.options_1.0.1  
##  [37] DBI_1.1.1              randomcoloR_1.1.0.1    Rcpp_1.0.6            
##  [40] viridisLite_0.3.0      xtable_1.8-4           clue_0.3-58           
##  [43] bit_4.0.4              htmlwidgets_1.5.3      httr_1.4.2            
##  [46] RColorBrewer_1.1-2     ellipsis_0.3.1         farver_2.1.0          
##  [49] pkgconfig_2.0.3        XML_3.99-0.5           sass_0.3.1            
##  [52] locfit_1.5-9.4         utf8_1.2.1             labeling_0.4.2        
##  [55] tidyselect_1.1.0       rlang_0.4.10           later_1.1.0.1         
##  [58] AnnotationDbi_1.52.0   munsell_0.5.0          tools_4.0.3           
##  [61] cachem_1.0.4           generics_0.1.0         RSQLite_2.2.3         
##  [64] evaluate_0.14          stringr_1.4.0          fastmap_1.1.0         
##  [67] yaml_2.2.1             knitr_1.31             bit64_4.0.5           
##  [70] shinycssloaders_1.0.0  zip_2.1.1              purrr_0.3.4           
##  [73] mime_0.10              formatR_1.7            compiler_4.0.3        
##  [76] curl_4.3               png_0.1-7              tibble_3.1.0          
##  [79] bslib_0.2.4            stringi_1.5.3          highr_0.8             
##  [82] futile.logger_1.4.3    lattice_0.20-41        Matrix_1.3-2          
##  [85] ggsci_2.9              vctrs_0.3.7            pillar_1.5.1          
##  [88] lifecycle_1.0.0        jquerylib_0.1.3        GlobalOptions_0.1.2   
##  [91] cowplot_1.1.1          data.table_1.14.0      bitops_1.0-6          
##  [94] seriation_1.2-9        httpuv_1.5.5           R6_2.5.0              
##  [97] promises_1.2.0.1       TSP_1.1-10             gridExtra_2.3         
## [100] codetools_0.2-18       lambda.r_1.2.4         assertthat_0.2.1      
## [103] rjson_0.2.20           withr_2.4.1            GenomeInfoDbData_1.2.4
## [106] VennDiagram_1.6.20     grid_4.0.3             tidyr_1.1.3           
## [109] rmarkdown_2.7          Cairo_1.5-12.2         Rtsne_0.15            
## [112] shiny_1.6.0