how is the topological overlap (TOM) algorithm calculated?
Entering edit mode
2.7 years ago
bioming ▴ 20

Hello, I'm exploring the WGCNA package and am trying to understanding the math behind calculating values in a topological overlap matrix (TOM). I understand the purpose of TOM is to better estimate "connectedness" of 2 nodes/genes than merely correlation from the similarity matrix. I was reading through Horvath's paper ( and I don't get this equation: enter image description here if I have a mock network like this:

  Graph                     adjacency matrix
         B                        A B C D
       /   \                   A  0
     A-------D                 B  1 0
       \   /                   C  1 0 0
         C                     D  1 1 1 0                               

so A and D share exactly the same neighbours (B and C), and should have TOM = 1, how does one arrive at this with equation 4?

(oh, also I'm not sure if I should have 0 or 1 on the diagonal?)

Thank-you for your help,


topological overlap matrix TOM network analysis • 4.1k views
Entering edit mode
2.5 years ago
udi.landau ▴ 40

From Eq. 4 l(ij) is the sum of multiplying the connection between AB, DB and AC,DC that is l(ij) = [1x1]+[1x1] = 2 a(ij) is the value of connection between A and D = 1 so l(ij) + a(ij) = 3 The connectivity value K is the sum of connection for the node. so k of A is 3 ans k of D is also 3. from that you can see that the minimum value of k is 3. and (1-a(ij)) = 0 so you get 3/3 = 1


Login before adding your answer.

Traffic: 1286 users visited in the last hour
Help About
Access RSS

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

Powered by the version 2.3.6