Mercurial > repos > shellac > sam_consensus_v3
comparison env/lib/python3.9/site-packages/networkx/algorithms/centrality/tests/test_subgraph.py @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
| author | shellac |
|---|---|
| date | Mon, 22 Mar 2021 18:12:50 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:4f3585e2f14b |
|---|---|
| 1 import pytest | |
| 2 | |
| 3 numpy = pytest.importorskip("numpy") | |
| 4 scipy = pytest.importorskip("scipy") | |
| 5 | |
| 6 import networkx as nx | |
| 7 from networkx.algorithms.centrality.subgraph_alg import ( | |
| 8 estrada_index, | |
| 9 communicability_betweenness_centrality, | |
| 10 subgraph_centrality, | |
| 11 subgraph_centrality_exp, | |
| 12 ) | |
| 13 from networkx.testing import almost_equal | |
| 14 | |
| 15 | |
| 16 class TestSubgraph: | |
| 17 def test_subgraph_centrality(self): | |
| 18 answer = {0: 1.5430806348152433, 1: 1.5430806348152433} | |
| 19 result = subgraph_centrality(nx.path_graph(2)) | |
| 20 for k, v in result.items(): | |
| 21 assert almost_equal(answer[k], result[k], places=7) | |
| 22 | |
| 23 answer1 = { | |
| 24 "1": 1.6445956054135658, | |
| 25 "Albert": 2.4368257358712189, | |
| 26 "Aric": 2.4368257358712193, | |
| 27 "Dan": 3.1306328496328168, | |
| 28 "Franck": 2.3876142275231915, | |
| 29 } | |
| 30 G1 = nx.Graph( | |
| 31 [ | |
| 32 ("Franck", "Aric"), | |
| 33 ("Aric", "Dan"), | |
| 34 ("Dan", "Albert"), | |
| 35 ("Albert", "Franck"), | |
| 36 ("Dan", "1"), | |
| 37 ("Franck", "Albert"), | |
| 38 ] | |
| 39 ) | |
| 40 result1 = subgraph_centrality(G1) | |
| 41 for k, v in result1.items(): | |
| 42 assert almost_equal(answer1[k], result1[k], places=7) | |
| 43 result1 = subgraph_centrality_exp(G1) | |
| 44 for k, v in result1.items(): | |
| 45 assert almost_equal(answer1[k], result1[k], places=7) | |
| 46 | |
| 47 def test_subgraph_centrality_big_graph(self): | |
| 48 g199 = nx.complete_graph(199) | |
| 49 g200 = nx.complete_graph(200) | |
| 50 | |
| 51 comm199 = nx.subgraph_centrality(g199) | |
| 52 comm199_exp = nx.subgraph_centrality_exp(g199) | |
| 53 | |
| 54 comm200 = nx.subgraph_centrality(g200) | |
| 55 comm200_exp = nx.subgraph_centrality_exp(g200) | |
| 56 | |
| 57 def test_communicability_betweenness_centrality(self): | |
| 58 answer = { | |
| 59 0: 0.07017447951484615, | |
| 60 1: 0.71565598701107991, | |
| 61 2: 0.71565598701107991, | |
| 62 3: 0.07017447951484615, | |
| 63 } | |
| 64 result = communicability_betweenness_centrality(nx.path_graph(4)) | |
| 65 for k, v in result.items(): | |
| 66 assert almost_equal(answer[k], result[k], places=7) | |
| 67 | |
| 68 answer1 = { | |
| 69 "1": 0.060039074193949521, | |
| 70 "Albert": 0.315470761661372, | |
| 71 "Aric": 0.31547076166137211, | |
| 72 "Dan": 0.68297778678316201, | |
| 73 "Franck": 0.21977926617449497, | |
| 74 } | |
| 75 G1 = nx.Graph( | |
| 76 [ | |
| 77 ("Franck", "Aric"), | |
| 78 ("Aric", "Dan"), | |
| 79 ("Dan", "Albert"), | |
| 80 ("Albert", "Franck"), | |
| 81 ("Dan", "1"), | |
| 82 ("Franck", "Albert"), | |
| 83 ] | |
| 84 ) | |
| 85 result1 = communicability_betweenness_centrality(G1) | |
| 86 for k, v in result1.items(): | |
| 87 assert almost_equal(answer1[k], result1[k], places=7) | |
| 88 | |
| 89 def test_estrada_index(self): | |
| 90 answer = 1041.2470334195475 | |
| 91 result = estrada_index(nx.karate_club_graph()) | |
| 92 assert almost_equal(answer, result, places=7) |
