Statistics
| Branch: | Revision:

## iof-tools / networkxMiCe / networkx-master / networkx / algorithms / bipartite / tests / test_spectral_bipartivity.py @ 5cef0f13

 1 ```# -*- coding: utf-8 -*- ``` ```from nose import SkipTest ``` ```from nose.tools import * ``` ```import networkx as nx ``` ```from networkx.algorithms.bipartite import spectral_bipartivity as sb ``` ```# Examples from Figure 1 ``` ```# E. Estrada and J. A. Rodríguez-Velázquez, "Spectral measures of ``` ```# bipartivity in complex networks", PhysRev E 72, 046105 (2005) ``` ```class TestSpectralBipartivity(object): ``` ``` @classmethod ``` ``` def setupClass(cls): ``` ``` global scipy ``` ``` global assert_equal ``` ``` global assert_almost_equal ``` ``` try: ``` ``` import scipy.linalg ``` ``` except ImportError: ``` ``` raise SkipTest('SciPy not available.') ``` ``` def test_star_like(self): ``` ``` # star-like ``` ``` G = nx.star_graph(2) ``` ``` G.add_edge(1, 2) ``` ``` assert_almost_equal(sb(G), 0.843, places=3) ``` ``` G = nx.star_graph(3) ``` ``` G.add_edge(1, 2) ``` ``` assert_almost_equal(sb(G), 0.871, places=3) ``` ``` G = nx.star_graph(4) ``` ``` G.add_edge(1, 2) ``` ``` assert_almost_equal(sb(G), 0.890, places=3) ``` ``` def k23_like(self): ``` ``` # K2,3-like ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(0, 1) ``` ``` assert_almost_equal(sb(G), 0.769, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` assert_almost_equal(sb(G), 0.829, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` G.add_edge(3, 4) ``` ``` assert_almost_equal(sb(G), 0.731, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(0, 1) ``` ``` G.add_edge(2, 4) ``` ``` assert_almost_equal(sb(G), 0.692, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` G.add_edge(3, 4) ``` ``` G.add_edge(0, 1) ``` ``` assert_almost_equal(sb(G), 0.645, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` G.add_edge(3, 4) ``` ``` G.add_edge(2, 3) ``` ``` assert_almost_equal(sb(G), 0.645, places=3) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` G.add_edge(3, 4) ``` ``` G.add_edge(2, 3) ``` ``` G.add_edge(0, 1) ``` ``` assert_almost_equal(sb(G), 0.597, places=3) ``` ``` def test_single_nodes(self): ``` ``` # single nodes ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(2, 4) ``` ``` sbn = sb(G, nodes=[1, 2]) ``` ``` assert_almost_equal(sbn[1], 0.85, places=2) ``` ``` assert_almost_equal(sbn[2], 0.77, places=2) ``` ``` G = nx.complete_bipartite_graph(2, 3) ``` ``` G.add_edge(0, 1) ``` ``` sbn = sb(G, nodes=[1, 2]) ``` ``` assert_almost_equal(sbn[1], 0.73, places=2) ``` ``` assert_almost_equal(sbn[2], 0.82, places=2) ```