跳到内容

计算所有顶点的多样性度量。

用法

diversity(graph, weights = NULL, vids = V(graph))

参数

graph

输入图。 边方向被忽略。

weights

NULL,或用于计算的边的权重向量。如果为 NULL,则使用“weight”属性。请注意,此度量未为无权图定义。

vids

要计算度量的顶点 ID。

一个数值向量,其长度是顶点的数量。

详细信息

顶点的多样性定义为其入射边的权重(缩放的)香农熵:$$D(i)=\frac{H(i)}{\log k_i}$$ 和 $$H(i)=-\sum_{j=1}^{k_i} p_{ij}\log p_{ij},$$ 其中 $$p_{ij}=\frac{w_{ij}}{\sum_{l=1}^{k_i}}V_{il},$$ 和 \(k_i\) 是顶点 \(i\) 的(总)度数,\(w_{ij}\) 是顶点 \(i\) 和 \(j\) 之间的边的权重。

对于度数小于 2 的顶点,该函数返回 NaN

参考文献

Nathan Eagle, Michael Macy 和 Rob Claxton:网络多样性和经济发展,Science 328, 1029–1031, 2010。

作者

Gabor Csardi csardi.gabor@gmail.com

diversity().

示例


g1 <- sample_gnp(20, 2 / 20)
g2 <- sample_gnp(20, 2 / 20)
g3 <- sample_gnp(20, 5 / 20)
E(g1)$weight <- 1
E(g2)$weight <- runif(ecount(g2))
E(g3)$weight <- runif(ecount(g3))
diversity(g1)
#>  [1] 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 0 0 1 1
diversity(g2)
#>  [1]       NaN 0.0000000 0.8608477 0.8116523 0.0000000 0.0000000 0.0000000
#>  [8] 0.5435621 0.8936834 0.0000000       NaN 0.0000000 0.0000000 0.9671509
#> [15] 0.8529370 0.0000000 0.0000000 0.8905518 0.6328877 0.0000000
diversity(g3)
#>  [1] 0.9736305 0.9305943 0.7838024 0.8961058 0.9096906 0.9124161 0.9518659
#>  [8] 0.6725178 0.0000000 0.8498885 0.9364498 0.4591131 0.9562086 0.9493656
#> [15] 0.9792812 0.9035640 0.8744335 0.8990292 0.9880011 0.9681798