How to interpret WGCNA's modulePreservation output when comparing 2 networks?
0
0
Entering edit mode
jol.espinoz ▴ 40
@jolespinoz-11290
Last seen 3.3 years ago

I'm trying to compare 2 networks that I've created as a toy dataset from WGCNA's tutorial section I'm not exactly sure how to interpret the resulting data since there is so much content. X_A and X_B are adjacency matrices while modules_A and modules_B are the module assignments (starting at 0 and ascending with the outlier module set as -1).  I want to look at the differences between modules and which modules are significant to the experimental/treatment phenotype network represented here as `Male`. 

Can somebody answer the following questions about this functions output?

Basing these questions off of the [documentation](https://rdrr.io/cran/WGCNA/man/modulePreservation.html)

(1) What is the meaning of: all network sample 'module' name: 0.1

(2) How is `quality` and `preservation` measured? 

(3) What `accuracy` is this referring to in the output?  

(4) What are `referenceSeparability` and `testSeparability`? 

(5) Does this function calculate significance for modules that are indicative of the test network? 

Here is my code below for running the function with my 2 precomputed adjacency matrices:

 

# Read DataFrames
read_dataframe = function(path,  sep="\t") {
  df = read.table(path, sep=sep, row.names=1, header = TRUE, check.names=FALSE)
  return(df)
}

# Data Overview
cat("Similarity", dim(X_A), "\nModule assignment", dim(A_modules), "\nModule Number Range", min(A_modules), max(A_modules))
#Similarity 375 375
#Module assignment 375 1
#Module Number Range 0 8

cat("Similarity", dim(X_B), "\nModule assignment", dim(B_modules), "\nModule Number Range", min(B_modules), max(B_modules))
#Similarity 375 375
#Module assignment 375 1
#Module Number Range 0 21

# Load data
library(WGCNA)
X_A = read_dataframe("./Google/Prototype/Data/FemaleLiver-Data/X_A.corr.abs.tsv")
X_A = data.matrix(X_A)
X_B = read_dataframe("./Google/Prototype/Data/FemaleLiver-Data/X_B.corr.abs.tsv")
X_B = data.matrix(X_B)

A_modules = read_dataframe("./Google/Prototype/Data/FemaleLiver-Data/X_A.corr.abs.modules.tsv")
B_modules = read_dataframe("./Google/Prototype/Data/FemaleLiver-Data/X_B.corr.abs.modules.tsv")

# Format data
multiExpr = list(
  "Female" = list(data=X_A),
  "Male" = list(data=X_B)
)

multiColor = list(
  "Female" = A_modules[rownames(X_A),],
  "Male" = B_modules[rownames(X_B),]
)

mp = modulePreservation(multiExpr, multiColor,
                          referenceNetworks = 1,
                          nPermutations = 10,
                          randomSeed = 0,
                          verbose = 3,
                          dataIsExpr=FALSE,
                          checkData = FALSE,
                         greyName=-1
                          )

..unassigned 'module' name: -1
  ..all network sample 'module' name: 0.1
  ..calculating observed preservation values
  ..calculating permutation Z scores
..Working with set 1 as reference set
....working with set 2 as test set
  ......working on permutation 1
  ......working on permutation 2
  ......working on permutation 3
  ......working on permutation 4
  ......working on permutation 5
  ......working on permutation 6
  ......working on permutation 7
  ......working on permutation 8
  ......working on permutation 9
  ......working on permutation 10
wgcna modules coexpression networks • 1.8k views
ADD COMMENT

Login before adding your answer.

Traffic: 838 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6