我需要确定网络中每个节点的传递性,但得到的结果不一致。
set.seed(123)
a <- rbinom(144, 1, .5)
b <- graph.adjacency(matrix(a, nrow = 12, ncol = 12), mode = "undirected")
transitivity(b, type = "local")
这提供了输出:
[1] 0.6888889 0.4909091 0.4444444 0.9333333 0.4909091 0.7500000 0.7333333 0.4666667 0.7333333 0.4222222 0.5000000
[12] 0.6944444
但是当我尝试指定单个节点时,输出中的某些值不匹配:
transitivity(b, vids = 2, type = "local")
[1] 0.75
事实上,当我尝试计算所有顶点的局部传递性时,许多与我将 vids 参数排除在外的情况不同。在某些情况下,当我尝试过这个时,一切都不同了。
transitivity(b, vids = V(b), type = "local")
[1] 0.6888889 0.7500000 0.7142857 0.9333333 0.7500000 0.7500000 0.7333333 0.7500000 0.7333333 0.6785714 0.8571429
[12] 0.6944444
如果我将 vids 设置为 NULL 它匹配第一个输出,根本不包含 vids 参数。
结果略有不同,但如果我创建有向网络,仍然不匹配。
关于可能导致此问题的原因或我应该使用哪组结果的任何想法?
感谢您的帮助。