coreness {igraph}R Documentation

K-core decomposition of graphs


The k-core of graph is a maximal subgraph in which each vertex has at least degree k. The coreness of a vertex is k if it belongs to the k-core but not to the (k+1)-core.


coreness(graph, mode = c("all", "out", "in"))



The input graph, it can be directed or undirected


The type of the core in directed graphs. Character constant, possible values: ⁠in⁠: in-cores are computed, out: out-cores are computed, all: the corresponding undirected graph is considered. This argument is ignored for undirected graphs.


The k-core of a graph is the maximal subgraph in which every vertex has at least degree k. The cores of a graph form layers: the (k+1)-core is always a subgraph of the k-core.

This function calculates the coreness for each vertex.


Numeric vector of integer numbers giving the coreness of each vertex.


Gabor Csardi


Vladimir Batagelj, Matjaz Zaversnik: An O(m) Algorithm for Cores Decomposition of Networks, 2002

Seidman S. B. (1983) Network structure and minimum degree, Social Networks, 5, 269–287.

See Also


Other bfs(), component_distribution(), connect(), constraint(), degree(), dfs(), distance_table(), edge_density(), feedback_arc_set(), girth(), is_dag(), is_matching(), knn(), laplacian_matrix(), reciprocity(), subcomponent(), subgraph(), topo_sort(), transitivity(), unfold_tree(), which_multiple(), which_mutual()


g <- make_ring(10)
g <- add_edges(g, c(1, 2, 2, 3, 1, 3))
coreness(g) # small core triangle in a ring

[Package igraph version 1.5.1 Index]