Question: WGCNA automatic vs manual network creation
0
gravatar for akridgerunner
4.1 years ago by
United States
akridgerunner20 wrote:

Hello,

I've created trees using what I thought were two relatively equivalent approaches, but I'm getting two very different results. Dr. Langfelder, if you're out there could you glance at this?

For the first network I'm manually generating a tree from a single block of some ~17,000 probes. For the second I break it in two using a max block size of 10,000. Both are signed networks using bicorr and a deep split of 3. I made sure to use the same datExpr and datTraits input objects. I've attached figures of the trees. It's also very surprising how poorly module assignment performed in block 2 of the automatically generated network, with most probes being thrown into gray. Now I'm desperately curious as to what separates these two approaches so much?

R script generate "automatic network":

adjacency_sp10_bicor_signed = adjacency(datExpr, power= 10, type="signed", corFnc="bicor")

TOM_sp10_bicor_signed = TOMsimilarity(adjacency_sp10_bicor_signed, TOMType="signed", verbose=5)

dissTOM_sp10_bicor_signed = 1-TOM_sp10_bicor_signed

geneTree = hclust(as.dist(dissTOM_sp10_bicor_signed), method = "average");

sizeGrWindow(12,9)

plot(geneTree, xlab="", sub="", main = "GSE10325 Active CD19B Affy GCRMA SP10", labels = FALSE, hang = 0.04);

dynamicMods_hybrid = cutreeDynamic(dendro = geneTree, distM = dissTOM_sp10_bicor_signed, method="hybrid", deepSplit = 3, pamRespectsDendro = TRUE, minClusterSize = 100);

moduleColors = labels2colors(dynamicMods_hybrid)

sizeGrWindow(8,6)

plotDendroAndColors(geneTree, moduleColors, "Dynamic Tree Cut", dendroLabels = FALSE, hang = 0.03, addGuide = TRUE, guideHang = 0.05, main = "GSE10325 GCRMA Affy CDF Signed TOM SP10, Hybrid Cut, DeepSplit=3, minMod=100, 29 modules")

R script to generate "manual network":

net = blockwiseModules(datExpr, power = 10, corType="bicor", deepSplit = 3,
                       TOMType = "signed", minModuleSize = 100,
                       numericLabels = TRUE,
                       pamStage = TRUE, pamRespectsDendro = TRUE,
                       saveTOMs = TRUE,
                       saveTOMFileBase = "GSE10325CD19B-Active-SP10-bicor-ds3",
                       verbose = 5,
                       maxBlockSize = 10000)

What's going wrong here?

Thanks! - Robert

Manually generated network:

Automatically generated network:

wgcna • 3.7k views
ADD COMMENTlink modified 4.1 years ago by Peter Langfelder2.3k • written 4.1 years ago by akridgerunner20
Answer: WGCNA automatic vs manual network creation
1
gravatar for Peter Langfelder
4.1 years ago by
United States
Peter Langfelder2.3k wrote:

In the call to blockwiseModules, you should include networkType = "signed" (TOMType has a different meaning). But it would also seem to me that there's something wrong with the plotting code for the block-wise dendrograms. The hockey-stick-like branches should correspond between the full and the blockwise analysis, and they don't seem to. Also, if you haven't done so, run goodSamplesGenes(datExpr) to check whether you have any genes with excessive numbers of missing data, although I don't imagine that could be the cause for this.

ADD COMMENTlink written 4.1 years ago by Peter Langfelder2.3k

Thanks Peter I'm currently running:

net = blockwiseModules(datExpr, power = 10, corType="bicor", deepSplit = 3,
                       networkType = "signed", TOMType = "signed", minModuleSize = 100,
                       numericLabels = TRUE,
                       pamStage = TRUE, pamRespectsDendro = TRUE,
                       saveTOMs = TRUE,
                       saveTOMFileBase = "GSE10325CD19B-Active-SP10-bicor-ds3",
                       verbose = 5,
                       maxBlockSize = 10000)

Do I need to specify both networkType and TOMType? The package documentation is vague on this:

"networkType : Allowed values are (unique abbreviations of) "unsigned", "signed", "signed hybrid". See adjacency.
TOMType: One of "none", "unsigned", "signed". If "none", adjacency will be used for clustering. If "unsigned", the standard TOM will be used (more generally, TOM function will receive the adjacency as input). If "signed", TOM will keep track of the sign of correlations between neighbors."

 

ADD REPLYlink written 4.1 years ago by akridgerunner20
Answer: WGCNA automatic vs manual network creation
1
gravatar for Peter Langfelder
4.1 years ago by
United States
Peter Langfelder2.3k wrote:

See this short report on the differences between signed and usigned TOM:

http://labs.genetics.ucla.edu/horvath/CoexpressionNetwork/Rpackages/WGCNA/TechnicalReports/signedTOM.pdf

 

 

ADD COMMENTlink written 4.1 years ago by Peter Langfelder2.3k

Great, thanks! I read this some time ago and use signed network analysis. It looks like I confused the TOMtype setting with the networkType setting, and by omitting the latter was generating unsigned networks. My new effort now looks beautiful, with the two blocks from the automatic approach resembling the single block of the manual approach. Thank you, deeply.

ADD REPLYlink modified 4.1 years ago • written 4.1 years ago by akridgerunner20

Link is down, unfortunately.

ADD REPLYlink written 3 months ago by rodrigo.duarte8820

Here's the new link: https://horvath.genetics.ucla.edu/html/CoexpressionNetwork/Rpackages/WGCNA/TechnicalReports/signedTOM.pdf

I don't understand what's the difference between the role of network type and TOMType here. I noticed that there isn't a "signed hybrid" option for TOMType, so does it make sense to use networkType = "signed hybrid", TOMType = "signed"?

ADD REPLYlink modified 27 days ago • written 27 days ago by rodrigo.duarte8820
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 142 users visited in the last hour