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:
Thanks Peter I'm currently running:
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."