Example data for multiWGCNA is stored in ExperimentHub. Access it like this:
# Load expression matrix and metadata
library(ExperimentHub)
## Loading required package: BiocGenerics
## Loading required package: generics
##
## Attaching package: 'generics'
## The following objects are masked from 'package:base':
##
## as.difftime, as.factor, as.ordered, intersect, is.element, setdiff,
## setequal, union
##
## Attaching package: 'BiocGenerics'
## The following objects are masked from 'package:generics':
##
## intersect, setdiff, setequal, union
## 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, saveRDS, setdiff,
## setequal, 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 Under development (unstable) (2024-10-21 r87258)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 24.04.1 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.21-bioc/R/lib/libRblas.so
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.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.5.0 ggalluvial_0.12.5
## [3] ggplot2_3.5.1 SummarizedExperiment_1.37.0
## [5] Biobase_2.67.0 GenomicRanges_1.59.0
## [7] GenomeInfoDb_1.43.0 IRanges_2.41.0
## [9] S4Vectors_0.45.0 MatrixGenerics_1.19.0
## [11] matrixStats_1.4.1 multiWGCNAdata_1.5.0
## [13] ExperimentHub_2.15.0 AnnotationHub_3.15.0
## [15] BiocFileCache_2.15.0 dbplyr_2.5.0
## [17] BiocGenerics_0.53.1 generics_0.1.3
## [19] BiocStyle_2.35.0
##
## loaded via a namespace (and not attached):
## [1] DBI_1.2.3 gridExtra_2.3 rlang_1.1.4
## [4] magrittr_2.0.3 compiler_4.5.0 RSQLite_2.3.7
## [7] png_0.1-8 vctrs_0.6.5 stringr_1.5.1
## [10] pkgconfig_2.0.3 crayon_1.5.3 fastmap_1.2.0
## [13] backports_1.5.0 XVector_0.47.0 utf8_1.2.4
## [16] rmarkdown_2.29 tzdb_0.4.0 preprocessCore_1.69.0
## [19] UCSC.utils_1.3.0 purrr_1.0.2 bit_4.5.0
## [22] xfun_0.49 zlibbioc_1.53.0 cachem_1.1.0
## [25] dcanr_1.23.0 flashClust_1.01-2 jsonlite_1.8.9
## [28] blob_1.2.4 DelayedArray_0.33.1 parallel_4.5.0
## [31] cluster_2.1.6 R6_2.5.1 stringi_1.8.4
## [34] bslib_0.8.0 rpart_4.1.23 jquerylib_0.1.4
## [37] Rcpp_1.0.13-1 bookdown_0.41 iterators_1.0.14
## [40] knitr_1.48 WGCNA_1.73 base64enc_0.1-3
## [43] readr_2.1.5 igraph_2.1.1 nnet_7.3-19
## [46] Matrix_1.7-1 splines_4.5.0 tidyselect_1.2.1
## [49] rstudioapi_0.17.1 abind_1.4-8 yaml_2.3.10
## [52] doParallel_1.0.17 codetools_0.2-20 curl_5.2.3
## [55] doRNG_1.8.6 lattice_0.22-6 tibble_3.2.1
## [58] withr_3.0.2 KEGGREST_1.47.0 evaluate_1.0.1
## [61] foreign_0.8-87 survival_3.7-0 Biostrings_2.75.0
## [64] pillar_1.9.0 BiocManager_1.30.25 filelock_1.0.3
## [67] rngtools_1.5.2 checkmate_2.3.2 foreach_1.5.2
## [70] hms_1.1.3 BiocVersion_3.21.1 munsell_0.5.1
## [73] scales_1.3.0 glue_1.8.0 Hmisc_5.2-0
## [76] tools_4.5.0 data.table_1.16.2 fastcluster_1.2.6
## [79] cowplot_1.1.3 grid_4.5.0 impute_1.81.0
## [82] AnnotationDbi_1.69.0 colorspace_2.1-1 patchwork_1.3.0
## [85] GenomeInfoDbData_1.2.13 htmlTable_2.4.3 Formula_1.2-5
## [88] cli_3.6.3 rappdirs_0.3.3 fansi_1.0.6
## [91] S4Arrays_1.7.1 dplyr_1.1.4 gtable_0.3.6
## [94] dynamicTreeCut_1.63-1 sass_0.4.9 digest_0.6.37
## [97] ggrepel_0.9.6 SparseArray_1.7.0 farver_2.1.2
## [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.20.0
## [106] mime_0.12 bit64_4.5.2