Rstudio 使用特征向量中心(R中的IGRAPHE)仅显示特定标签

Rstudio 使用特征向量中心(R中的IGRAPHE)仅显示特定标签,rstudio,igraph,degree,betweenness,eigenvector,hub,r,social-networking,sna,Rstudio,Igraph,Degree,Betweenness,Eigenvector,Hub,R,Social Networking,Sna,我使用的是版本0.99.879和版本1.0.1 我的问题与你的很相似。我已经将我的后续问题作为一个评论发布在那里,但被要求提出一个新问题 我还希望只显示特定的顶点标签,如果使用或中心函数,这可以很好地工作。但是,我尝试使用或中心性,它显示了以下错误 ifelseevcentg>0.1,Vg$name,NA:list对象中出错 无法强制为类型“double” 代码如下: #random graph library(igraph) g <- graph( c("John", "Jim",

我使用的是版本0.99.879和版本1.0.1

我的问题与你的很相似。我已经将我的后续问题作为一个评论发布在那里,但被要求提出一个新问题

我还希望只显示特定的顶点标签,如果使用或中心函数,这可以很好地工作。但是,我尝试使用或中心性,它显示了以下错误

ifelseevcentg>0.1,Vg$name,NA:list对象中出错 无法强制为类型“double”

代码如下:

#random graph
library(igraph)

g <- graph( c("John", "Jim", "Jim", "Jack", "Jim", "Jack", "Brian", "John", "John", "Janis", "Janis", "Jennifer", "Justin", "John"), 
                   isolates=c("Jesse", "Brian") )
# works perfectly fine
par(mfrow=c(1,2), mar=c(0,0,1,0))
plot(g, vertex.size=9,
     vertex.label = ifelse(betweenness(g) > 0, V(g)$name, NA),
     edge.arrow.size=.5)
plot(g, vertex.size=9,
     vertex.label = ifelse(degree(g) > 0, V(g)$name, NA),
     edge.arrow.size=.5)
#does not work
plot(g, vertex.size=9,
     vertex.label = ifelse(evcent(g) > 0.01, V(g)$name, NA),
     edge.arrow.size=.5)
# I also tried this with no success
eig <- evcent(g)
par(mfrow=c(1,1), mar=c(0,0,1,0))
plot(g, vertex.size=9,
     vertex.label = ifelse(eig$vector > 0.1, V(g)$name, NA),
     edge.arrow.size=.5)
这个问题怎么解决。这究竟意味着什么:

“双字”


提前感谢您的帮助

查看帮助页面?evcent。它说:

价值观

包含以下组件的命名列表:

你需要使用

ifelse(evcent(g)$vector > 0.01,

同样地,使用hub_cent$vector

谢谢你的回答,但我想知道,如果我对节点的特征向量得分感兴趣,那么ifelseevcentg$vector>0.4,Vg$name,NA是否更合适?你是对的。它应该是向量,而不是值。我会更改答案,以免混淆他人。