添加中心性度量作为顶点属性
Adding centrality measures as vertex attributes
我正在尝试将中心性度量作为属性添加到 "master graph"、g_master。这是我的代码:
library(igraph)
#generate master graph
g <- sample_pa(10000)
g_in <- degree(g, mode="in")
g_out <- degree(g, mode="out")
g_inclo <- closeness(g, mode="in")
g_outclo <- closeness(g, mode="out")
g_bet <- betweenness(g)
set_vertex_attr(g, "name", index=V(g), value = V(g))
g_master <- data.frame(V(g), g_in, g_out, g_inclo, g_outclo, g_bet)
但我得到以下信息:
> g_master <- data.frame(V(g), g_in, g_out, g_inclo, g_outclo, g_bet)
Error in as.data.frame.default(x[[i]], optional = TRUE) :
cannot coerce class ""igraph.vs"" to a data.frame
其他部分代码没问题。
如错误所述,它在尝试使用 class igraph.vs
时遇到问题。特别是 V(g)
导致问题的原因。但是我们可以这样强制它:
g_master <- data.frame(V = as.vector(V(g)), g_in, g_out, g_inclo, g_outclo, g_bet)
head(g_master, 2)
# V g_in g_out g_inclo g_outclo g_bet
# 1 1 208 0 2.193608e-05 1.0001e-08 0
# 2 2 48 1 1.042957e-08 1.0002e-08 411
我正在尝试将中心性度量作为属性添加到 "master graph"、g_master。这是我的代码:
library(igraph)
#generate master graph
g <- sample_pa(10000)
g_in <- degree(g, mode="in")
g_out <- degree(g, mode="out")
g_inclo <- closeness(g, mode="in")
g_outclo <- closeness(g, mode="out")
g_bet <- betweenness(g)
set_vertex_attr(g, "name", index=V(g), value = V(g))
g_master <- data.frame(V(g), g_in, g_out, g_inclo, g_outclo, g_bet)
但我得到以下信息:
> g_master <- data.frame(V(g), g_in, g_out, g_inclo, g_outclo, g_bet)
Error in as.data.frame.default(x[[i]], optional = TRUE) :
cannot coerce class ""igraph.vs"" to a data.frame
其他部分代码没问题。
如错误所述,它在尝试使用 class igraph.vs
时遇到问题。特别是 V(g)
导致问题的原因。但是我们可以这样强制它:
g_master <- data.frame(V = as.vector(V(g)), g_in, g_out, g_inclo, g_outclo, g_bet)
head(g_master, 2)
# V g_in g_out g_inclo g_outclo g_bet
# 1 1 208 0 2.193608e-05 1.0001e-08 0
# 2 2 48 1 1.042957e-08 1.0002e-08 411