示例#1
0
 def test_lind_square_clustering(self):
     """Test C4 for figure 1 Lind et al (2005)"""
     G = nx.Graph(
         [
             (1, 2),
             (1, 3),
             (1, 6),
             (1, 7),
             (2, 4),
             (2, 5),
             (3, 4),
             (3, 5),
             (6, 7),
             (7, 8),
             (6, 8),
             (7, 9),
             (7, 10),
             (6, 11),
             (6, 12),
             (2, 13),
             (2, 14),
             (3, 15),
             (3, 16),
         ]
     )
     G1 = G.subgraph([1, 2, 3, 4, 5, 13, 14, 15, 16])
     G2 = G.subgraph([1, 6, 7, 8, 9, 10, 11, 12])
     assert nx.square_clustering(G, [1])[1] == 3 / 75.0
     assert nx.square_clustering(G1, [1])[1] == 2 / 6.0
     assert nx.square_clustering(G2, [1])[1] == 1 / 5.0
示例#2
0
 def test_path(self):
     G = nx.path_graph(10)
     assert list(nx.square_clustering(G).values()) == [
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
         0.0,
     ]
     assert nx.square_clustering(G) == {
         0: 0.0,
         1: 0.0,
         2: 0.0,
         3: 0.0,
         4: 0.0,
         5: 0.0,
         6: 0.0,
         7: 0.0,
         8: 0.0,
         9: 0.0,
     }
示例#3
0
 def test_cubical(self):
     G = nx.cubical_graph()
     assert list(nx.square_clustering(G).values()) == [
         0.5,
         0.5,
         0.5,
         0.5,
         0.5,
         0.5,
         0.5,
         0.5,
     ]
     assert list(nx.square_clustering(G, [1, 2]).values()) == [0.5, 0.5]
     assert nx.square_clustering(G, [1])[1] == 0.5
     assert nx.square_clustering(G, [1, 2]) == {1: 0.5, 2: 0.5}
示例#4
0
 def test_bipartite_k5(self):
     G = nx.complete_bipartite_graph(5, 5)
     assert list(nx.square_clustering(G).values()) == [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
示例#5
0
 def test_clustering(self):
     G = nx.Graph()
     assert list(nx.square_clustering(G).values()) == []
     assert nx.square_clustering(G) == {}