Example data for multiWGCNA is stored in ExperimentHub. Access it like this:
# Load expression matrix and metadata
library(ExperimentHub)
## Loading required package: BiocGenerics
##
## Attaching package: 'BiocGenerics'
## The following objects are masked from 'package:stats':
##
## IQR, mad, sd, var, xtabs
## The following objects are masked from 'package:base':
##
## Filter, Find, Map, Position, Reduce, anyDuplicated, aperm, append,
## as.data.frame, basename, cbind, colnames, dirname, do.call,
## duplicated, eval, evalq, get, grep, grepl, intersect, is.unsorted,
## lapply, mapply, match, mget, order, paste, pmax, pmax.int, pmin,
## pmin.int, rank, rbind, rownames, sapply, setdiff, table, tapply,
## union, unique, unsplit, which.max, which.min
## Loading required package: AnnotationHub
## Loading required package: BiocFileCache
## Loading required package: dbplyr
eh = ExperimentHub()
eh_query = query(eh, c("multiWGCNAdata"))
## download the autism data and metadata
autism_se = eh_query[["EH8219"]]
## see ?multiWGCNAdata and browseVignettes('multiWGCNAdata') for documentation
## loading from cache
## require("SummarizedExperiment")
Now, proceed with the multiWGCNA analysis:
# Load multiWGCNA R package
library(multiWGCNA)
## Loading required package: ggalluvial
## Loading required package: ggplot2
##
# Obtain metadata
sampleTable = colData(autism_se)
# Randomly sample 2000 genes from the expression matrix
set.seed(1)
autism_se = autism_se[sample(rownames(autism_se), 2000),]
# Check the data
assays(autism_se)[[1]][1:5, 1:5]
## GSM706412 GSM706413 GSM706414 GSM706415 GSM706416
## ILMN_1672121 11.034264 10.446682 11.473705 11.732849 11.43105
## ILMN_2151368 10.379812 9.969130 9.990030 9.542288 10.26247
## ILMN_1757569 9.426955 9.050024 9.347505 9.235251 9.38837
## ILMN_2400219 12.604047 12.886037 12.890658 12.446960 12.98925
## ILMN_2222101 12.385019 12.748229 12.418027 11.690253 13.10915
sampleTable
## DataFrame with 58 rows and 3 columns
## Sample Status Tissue
## <character> <character> <character>
## GSM706412 GSM706412 autism FC
## GSM706413 GSM706413 autism FC
## GSM706414 GSM706414 autism FC
## GSM706415 GSM706415 autism FC
## GSM706416 GSM706416 autism FC
## ... ... ... ...
## GSM706465 GSM706465 controls TC
## GSM706466 GSM706466 controls TC
## GSM706467 GSM706467 controls TC
## GSM706468 GSM706468 controls TC
## GSM706469 GSM706469 controls TC
# Set the alpha level for statistical analyses and the soft power for network construction
alphaLevel = 0.05
softPower = 10
# If your sample traits include numbers that you'd like to be considered numerical
# variables rather than categorical variables, set detectNumbers = TRUE
detectNumbers = FALSE
We now perform network construction, module eigengene calculation, module-trait correlation.
# Define our conditions for trait 1 (disease) and 2 (brain region)
conditions1 = unique(sampleTable[,2])
conditions2 = unique(sampleTable[,3])
# Construct the combined networks and all the sub-networks (autism only, controls only, FC only, and TC only)
# Same parameters as Tommasini and Fogel. BMC Bioinformatics
myNetworks = constructNetworks(autism_se, sampleTable, conditions1, conditions2,
networkType = "signed", TOMType = "unsigned",
power = softPower, minModuleSize = 100, maxBlockSize = 25000,
reassignThreshold = 0, minKMEtoStay = 0, mergeCutHeight = 0,
numericLabels = TRUE, pamRespectsDendro = FALSE,
deepSplit = 4, verbose = 3)
Carry on with the multiWGCNA analysis according to the generalWorkflow.Rmd vignette!
sessionInfo()
## R version 4.4.0 RC (2024-04-16 r86468)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 22.04.4 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.20-bioc/R/lib/libRblas.so
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_GB LC_COLLATE=C
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## time zone: America/New_York
## tzcode source: system (glibc)
##
## attached base packages:
## [1] stats4 stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] multiWGCNA_1.3.0 ggalluvial_0.12.5
## [3] ggplot2_3.5.1 SummarizedExperiment_1.35.0
## [5] Biobase_2.65.0 GenomicRanges_1.57.0
## [7] GenomeInfoDb_1.41.0 IRanges_2.39.0
## [9] S4Vectors_0.43.0 MatrixGenerics_1.17.0
## [11] matrixStats_1.3.0 multiWGCNAdata_1.3.0
## [13] ExperimentHub_2.13.0 AnnotationHub_3.13.0
## [15] BiocFileCache_2.13.0 dbplyr_2.5.0
## [17] BiocGenerics_0.51.0 BiocStyle_2.33.0
##
## loaded via a namespace (and not attached):
## [1] DBI_1.2.2 gridExtra_2.3 rlang_1.1.3
## [4] magrittr_2.0.3 compiler_4.4.0 RSQLite_2.3.6
## [7] png_0.1-8 vctrs_0.6.5 stringr_1.5.1
## [10] pkgconfig_2.0.3 crayon_1.5.2 fastmap_1.1.1
## [13] backports_1.4.1 XVector_0.45.0 utf8_1.2.4
## [16] rmarkdown_2.26 tzdb_0.4.0 preprocessCore_1.67.0
## [19] UCSC.utils_1.1.0 purrr_1.0.2 bit_4.0.5
## [22] xfun_0.43 zlibbioc_1.51.0 cachem_1.0.8
## [25] dcanr_1.21.0 flashClust_1.01-2 jsonlite_1.8.8
## [28] blob_1.2.4 DelayedArray_0.31.0 parallel_4.4.0
## [31] cluster_2.1.6 R6_2.5.1 stringi_1.8.3
## [34] bslib_0.7.0 rpart_4.1.23 jquerylib_0.1.4
## [37] Rcpp_1.0.12 bookdown_0.39 iterators_1.0.14
## [40] knitr_1.46 WGCNA_1.72-5 base64enc_0.1-3
## [43] readr_2.1.5 igraph_2.0.3 nnet_7.3-19
## [46] Matrix_1.7-0 splines_4.4.0 tidyselect_1.2.1
## [49] rstudioapi_0.16.0 abind_1.4-5 yaml_2.3.8
## [52] doParallel_1.0.17 codetools_0.2-20 curl_5.2.1
## [55] doRNG_1.8.6 lattice_0.22-6 tibble_3.2.1
## [58] withr_3.0.0 KEGGREST_1.45.0 evaluate_0.23
## [61] foreign_0.8-86 survival_3.6-4 Biostrings_2.73.0
## [64] pillar_1.9.0 BiocManager_1.30.22 filelock_1.0.3
## [67] rngtools_1.5.2 checkmate_2.3.1 foreach_1.5.2
## [70] generics_0.1.3 hms_1.1.3 BiocVersion_3.20.0
## [73] munsell_0.5.1 scales_1.3.0 glue_1.7.0
## [76] Hmisc_5.1-2 tools_4.4.0 data.table_1.15.4
## [79] fastcluster_1.2.6 cowplot_1.1.3 grid_4.4.0
## [82] impute_1.79.0 AnnotationDbi_1.67.0 colorspace_2.1-0
## [85] patchwork_1.2.0 GenomeInfoDbData_1.2.12 htmlTable_2.4.2
## [88] Formula_1.2-5 cli_3.6.2 rappdirs_0.3.3
## [91] fansi_1.0.6 S4Arrays_1.5.0 dplyr_1.1.4
## [94] gtable_0.3.5 dynamicTreeCut_1.63-1 sass_0.4.9
## [97] digest_0.6.35 ggrepel_0.9.5 SparseArray_1.5.0
## [100] htmlwidgets_1.6.4 memoise_2.0.1 htmltools_0.5.8.1
## [103] lifecycle_1.0.4 httr_1.4.7 GO.db_3.19.1
## [106] mime_0.12 bit64_4.0.5