我想使用igraph包测量R中262000个节点和1M边缘的有向图的特征向量中心性。当我运行命令时,我收到此错误:
> ev<-evcent(amazon,directed=TRUE)
.Call中的错误(&#34; R_igraph_eigenvector_centrality&#34 ;, graph,directed,scale,:在arpack.c:1174:ARPACK错误,达到的最大迭代次数De plus:警告消息:In .Call(& #34; R_igraph_eigenvector_centrality&#34;,graph,directed,scale,:在arpack.c:776:ARPACK解算器未能收敛(1001次迭代,0/1特征向量收敛)
我不知道这个错误是什么意思???
答案 0 :(得分:4)
错误表示它的内容:Maximum number of iterations reached
。
您可以增加最大迭代次数。这是一个可重复的例子:
首先制作图表:
> g <- make_ring(1000, directed=FALSE)
然后将默认迭代次数设置为一个小数字:
> arpack_defaults$maxiter = 10
将其传递给eigen_centrality
并收到错误消息:
> e = eigen_centrality(g, options=arpack_defaults)
Error in .Call("R_igraph_eigenvector_centrality", graph, directed, scale, :
At arpack.c:944 : ARPACK error, Maximum number of iterations reached
In addition: Warning message:
In .Call("R_igraph_eigenvector_centrality", graph, directed, scale, :
At arpack.c:776 :ARPACK solver failed to converge (11 iterations, 0/1 eigenvectors converged)
让我们尝试更多的迭代:
> arpack_defaults$maxiter = 1000
看看是否有效:
> e = eigen_centrality(g, options=arpack_defaults)
没有错误!
我不知道您的图表需要多少次迭代,或者需要多长时间。只需继续添加零,直到它收敛并正确返回,或者你放弃,因为它花了太长时间。