NetworkX

Previous topic

networkx.algorithms.core.core_number

Next topic

networkx.algorithms.core.k_shell

networkx.algorithms.core.k_core

networkx.algorithms.core.k_core(G, k=None, core_number=None)

Return the k-core of G.

A k-core is a maximal subgraph that contains nodes of degree k or more.

Parameters :

G : NetworkX graph

A graph or directed graph

k : int, optional

The order of the core. If not specified return the main core.

core_number : dictionary, optional

Precomputed core numbers for the graph G.

Returns :

G : NetworkX graph

The k-core subgraph

Raises :

NetworkXError :

The k-core is not defined for graphs with self loops or parallel edges.

See also

core_number

Notes

The main core is the core with the largest degree.

Not implemented for graphs with parallel edges or self loops.

For directed graphs the node degree is defined to be the in-degree + out-degree.

References

[R73]An O(m) Algorithm for Cores Decomposition of Networks Vladimir Batagelj and Matjaz Zaversnik, 2003. http://arxiv.org/abs/cs.DS/0310049