Question: WGCNA export to cytoscape
gravatar for 2323982403
18 months ago by
232398240320 wrote:

    I'm using the exportNetworkToCytoscape function to export the module of interest to cytoscape. The tutorial first calculate TOM, select node in the network, choosing a threshold of the edge and then export to cytoscape. An edge can exists when the weight between two nodes is above the threshold.

    In cytoscape, I map the degree of nodes to node size, which means that the more connection one node has, the bigger size it will be. The node with big size will be considered hub genes.But the hub genes I selected from the visualization step in cytoscape is completely different from hub genes chosen based on module membership. When I look into the source code of exportNetworkToCytoscape on github, I found it first calculate a dist measure on TOM, and then apply the threshold to the dist measure. I'm wondering if it is logic, because TOM seems to be a measurement of correlation between two nodes,and just filter the edges with low topological overlap is fine, why do we have to calculate the dist of TOM and filter edge on that measure? And why do the hub genes selected from cytoscape is completely different from module membership?


ADD COMMENTlink modified 10 months ago by harelarik0 • written 18 months ago by 232398240320
gravatar for Peter Langfelder
18 months ago by
United States
Peter Langfelder1.6k wrote:

Your reading of the code is incorrect. The code applies as.dist(), not dist(), to the input adjacency matrix (which is usually TOM). as.dist turns a matrix into distance representation by flattening the lower triangle. The information (e.g., numbers) remain exactly the same. 

I'm not so sure about the rest of your question since I rarely use Cytoscape, but in WGCNA hub genes are selected either by calculating the intramodular connectivity from the adjacency (as opposed to TOM), or by ranking genes using their correlation with the module eigengene (kME). Either one should produce results similar to but likely somewhat different from ranking of connectivity calculated from TOM, possibly on a subset of genes.

ADD COMMENTlink modified 18 months ago • written 18 months ago by Peter Langfelder1.6k

1. So the "weight" output of the edges file generated by exportNetworkToCytoscape is based on Topological Overlap Matrix (TOM), as oppesd to pearson correlation used to calculate distance from eigengene during modules generation which can be restricted by minKMEtoStay? Is it correct?


2. IS this weight (generated by exportNetworkToCytoscape) is the Topological Overlap Matrix values?

Is it in in direct proportion to high correlation between genes? i.e., high weight values means high correlation, and low values mean low correlation?


3. What is the recommended threshold for this weight when using exportNetworkToCytoscape?

Or what would be a good way to select this threshold?

ADD REPLYlink modified 10 months ago • written 10 months ago by harelarik0

The weight generated by exportNetworkToCytoscape is exactly the matrix you give it as input. In the tutorials we use TOM but you could also use Pearson correlation or the adjacency. KME is not a measure of edge weight since KME is not a pairwise measure and hence is not used in the exportNetwork... functions.

TOM and Pearson correlation tend to be highly (Spearman-)correlated, so "relatively" high TOM implies "relatively" high correlation (here "relative" is relative to other gene pairs) but they are obviously not linearly related.

ADD REPLYlink written 10 months ago by Peter Langfelder1.6k

Thank you very much!

ADD REPLYlink written 10 months ago by harelarik0

Would be a good way to select the  "threshold", when using exportNetworkToCytoscape?

ADD REPLYlink written 10 months ago by harelarik0

My operational answer is to select a threshold that keeps the file size manageable, then use filtering in Cytoscape to interactively choose a threshold that results in an informative plot. This assumes that Cytoscape is only used for visualization; if you're going to use Cytoscape for further analysis, you should probably set the threshold to zero.

ADD REPLYlink written 10 months ago by Peter Langfelder1.6k

Thank you very much!

ADD REPLYlink written 10 months ago by harelarik0
Please log in to add an answer.


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