[英]Printing network properties of nodes with igraph for R
我正在使用igraph R软件包进行SNA,需要将节点的一些网络属性以及每个节点的ID保存到文件中以进行进一步分析。 也就是说,文档的第一列代表节点ID,其他列代表属性。 我可以使用中心度度量,但是其他igraph函数(例如传递性)例如,仅返回具有计算出的网络属性的向量,如
transitivity(graph,type=c("local"))
[1] 0.4285714 0.3976608 0.5454545 0.7142857 0.3928571 0.4640523
[7] 0.5620915 0.6095238 0.3571429 0.4743590 0.3416667 0.6023392
[13] 0.6000000 0.5228758 0.4771242 0.4835165 0.3246753 0.5000000
[19] 0.3636364 0.5777778 0.3571429 0.4487179 0.5238095 0.4857143
我想做的就是能够将传递性添加到以下集中度度量的数据框中:
metrics <- data.frame(
deg=degree(graph)
bet=betweenness(graph)
clo=closeness(graph)
eig=evcent(graph)$vector
)
返回:
deg bet clos eig
001 7 8.6046215 0.009523810 0.1697311
002 19 48.2885279 0.012500000 0.7012156
003 12 10.5285962 0.011111111 0.4280625
004 15 8.6161170 0.011363636 0.7729130
感谢您的帮助。 谢谢!
只需将功能添加到您的data.frame
:
metrics <- data.frame(
deg=degree(graph),
bet=betweenness(graph),
clo=closeness(graph),
eig=evcent(graph)$vector,
tra=transitivity(graph,type=c("local"))
)
您可以将V(graph)$ name添加到数据框中以获取与度量相关的ID。
metrics <- data.frame(
id = V(graph)$name
deg=degree(graph),
bet=betweenness(graph),
clo=closeness(graph),
eig=evcent(graph)$vector,
tra=transitivity(graph,type=c("local"))
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.