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: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, is.unsorted, lapply,
## mapply, match, mget, order, paste, pmax, pmax.int, pmin, pmin.int,
## rank, rbind, rownames, sapply, saveRDS, table, tapply, unique,
## unsplit, which.max, which.min
## Loading required package: AnnotationHub
## Loading required package: BiocFileCache
## Loading required package: dbplyr
## Registered S3 method overwritten by 'bit64':
## method from
## print.bitstring tools
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.6.0 RC (2026-04-17 r89917)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 24.04.4 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.24-bioc/R/lib/libRblas.so
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0 LAPACK version 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.9.3 ggalluvial_0.12.6
## [3] ggplot2_4.0.2 SummarizedExperiment_1.41.1
## [5] Biobase_2.71.0 GenomicRanges_1.63.2
## [7] Seqinfo_1.1.0 IRanges_2.45.0
## [9] S4Vectors_0.49.2 MatrixGenerics_1.23.0
## [11] matrixStats_1.5.0 multiWGCNAdata_1.9.0
## [13] ExperimentHub_3.1.0 AnnotationHub_4.1.0
## [15] BiocFileCache_3.1.0 dbplyr_2.5.2
## [17] BiocGenerics_0.57.1 generics_0.1.4
## [19] BiocStyle_2.39.0
##
## loaded via a namespace (and not attached):
## [1] RColorBrewer_1.1-3 rstudioapi_0.18.0 jsonlite_2.0.0
## [4] magrittr_2.0.5 farver_2.1.2 rmarkdown_2.31
## [7] vctrs_0.7.3 memoise_2.0.1 base64enc_0.1-6
## [10] htmltools_0.5.9 S4Arrays_1.11.1 dynamicTreeCut_1.63-1
## [13] curl_7.0.0 SparseArray_1.11.13 Formula_1.2-5
## [16] sass_0.4.10 bslib_0.10.0 htmlwidgets_1.6.4
## [19] httr2_1.2.2 impute_1.85.0 cachem_1.1.0
## [22] igraph_2.2.3 lifecycle_1.0.5 iterators_1.0.14
## [25] pkgconfig_2.0.3 Matrix_1.7-5 R6_2.6.1
## [28] fastmap_1.2.0 digest_0.6.39 colorspace_2.1-2
## [31] patchwork_1.3.2 AnnotationDbi_1.73.1 Hmisc_5.2-5
## [34] RSQLite_2.4.6 filelock_1.0.3 httr_1.4.8
## [37] polyclip_1.10-7 abind_1.4-8 compiler_4.6.0
## [40] rngtools_1.5.2 bit64_4.6.0-1 withr_3.0.2
## [43] doParallel_1.0.17 htmlTable_2.4.3 S7_0.2.1-1
## [46] backports_1.5.1 viridis_0.6.5 DBI_1.3.0
## [49] ggforce_0.5.0 MASS_7.3-65 rappdirs_0.3.4
## [52] DelayedArray_0.37.1 flashClust_1.1-4 tools_4.6.0
## [55] foreign_0.8-91 otel_0.2.0 nnet_7.3-20
## [58] glue_1.8.1 grid_4.6.0 checkmate_2.3.4
## [61] cluster_2.1.8.2 gtable_0.3.6 tzdb_0.5.0
## [64] preprocessCore_1.73.0 tidyr_1.3.2 hms_1.1.4
## [67] data.table_1.18.2.1 WGCNA_1.74 tidygraph_1.3.1
## [70] XVector_0.51.0 ggrepel_0.9.8 BiocVersion_3.23.1
## [73] foreach_1.5.2 pillar_1.11.1 stringr_1.6.0
## [76] splines_4.6.0 dplyr_1.2.1 tweenr_2.0.3
## [79] lattice_0.22-9 survival_3.8-6 bit_4.6.0
## [82] tidyselect_1.2.1 Biostrings_2.79.5 knitr_1.51
## [85] gridExtra_2.3 bookdown_0.46 xfun_0.57
## [88] graphlayouts_1.2.3 stringi_1.8.7 yaml_2.3.12
## [91] evaluate_1.0.5 codetools_0.2-20 ggraph_2.2.2
## [94] tibble_3.3.1 BiocManager_1.30.27 cli_3.6.6
## [97] rpart_4.1.27 jquerylib_0.1.4 dichromat_2.0-0.1
## [100] Rcpp_1.1.1-1 png_0.1-9 fastcluster_1.3.0
## [103] parallel_4.6.0 readr_2.2.0 blob_1.3.0
## [106] dcanr_1.27.0 doRNG_1.8.6.3 viridisLite_0.4.3
## [109] scales_1.4.0 purrr_1.2.2 crayon_1.5.3
## [112] rlang_1.2.0 cowplot_1.2.0 KEGGREST_1.51.1