首页 文章

有向图中的特征向量

提问于
浏览
0

我想用igraph包测量R中262000个节点和1M边缘的有向图的特征向量中心性 . 当我运行命令时,我收到此错误:

> ev<-evcent(amazon,directed=TRUE)

.Call中的错误(“R_igraph_eigenvector_centrality”,图形,定向,比例,:在arpack.c:1174:ARPACK错误,达到的最大迭代次数De plus:警告消息:In .Call(“R_igraph_eigenvector_centrality”,graph,directed, scale,:在arpack.c:776:ARPACK解算器无法收敛(1001次迭代,0/1特征向量收敛)

我不知道这个错误是什么意思???

1 回答

  • 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)
    

    没错!

    我不知道您的图表需要多少次迭代,或者需要多长时间 . 只需继续添加零,直到它收敛并正确返回,或者你放弃,因为它花了太长时间 .

相关问题