| graph.knn {igraph} | R Documentation |
Calculate the average nearest neighbor degree of the given vertices and the same quantity in the function of vertex degree
graph.knn(graph, vids=V(graph), weights=NULL)
graph |
The input graph. It can be directed, but it will be treated as undirected, i.e. the direction of the edges is ignored. |
vids |
The vertices for which the calculation is
performed. Normally it includes all vertices. Note, that if not all
vertices are given here, then both ‘knn’ and
‘knnk’ will be calculated based on the given vertices
only. |
weights |
Weight vector. If the graph has a weight edge
attribute, then this is used by default. If this argument is given,
then vertex strength (see graph.strength) is used
instead of vertex degree. But note that knnk is still given
in the function of the normal vertex degree. |
Note that for zero degree vertices the answer in ‘knn’
is NaN (zero divided by zero), the same is true for
‘knnk’ if a given degree never appears in the network.
A list with two members:
knn |
A numeric vector giving the average nearest neighbor
degree for all vertices in vids. |
knnk |
A numeric vector, its length is the maximum (total) vertex degree in the graph. The first element is the average nearest neighbor degree of vertices with degree one, etc. |
Gabor Csardi csardi@rmki.kfki.hu
Alain Barrat, Marc Barthelemy, Romualdo Pastor-Satorras, Alessandro Vespignani: The architecture of complex weighted networks, Proc. Natl. Acad. Sci. USA 101, 3747 (2004)
# Some trivial ones g <- graph.ring(10) graph.knn(g) g2 <- graph.star(10) graph.knn(g2) # A scale-free one, try to plot 'knnk' g3 <- simplify(ba.game(1000, m=5)) graph.knn(g3) # A random graph g4 <- random.graph.game(1000, p=5/1000) graph.knn(g4) # A weighted graph g5 <- graph.star(10) E(g5)$weight <- seq(ecount(g5)) graph.knn(g5)