微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

特征向量中心性计算 igraph (Python)

如何解决特征向量中心性计算 igraph (Python)

我试图在 python 的 eigenvector_centrality() 包中查看 igraph函数定义,但找不到它们。我想了解他们如何计算有向图和无向图的特征向量中心性。任何指向来源或使用的计算的链接都会非常有帮助。

解决方法

igraph 的源代码可以在 https://github.com/igraph/python-igraph 下查看。

你要找的eigenvector_centrality的函数定义可能在这个文件下:https://github.com/igraph/igraph/blob/2ceb15db7983a15e499844daddd1e1aa72cb0138/src/centrality/centralization.c 使用 C 语言。

,

igraph 使用 ARPACK 来计算特征向量中心性。 ARPACK 是用于查找稀疏矩阵的特征值/特征向量的通用包。

从 igraph 0.9 开始,您将在 igraph 的 C 核心 (link) 的 src/centrality/centrality_other 中找到源代码,尽管我认为查看它并没有特别的帮助。如果您对实施有具体的顾虑,您应该直接询问它们。

一些可能有用的注释:

  • 特征向量中心性仅适用于连通图。对于未连接的情况,该解决方案不是唯一的,igraph 0.9 不保证处理这种情况。
  • 在有向情况下,igraph 使用的定义是 \sum_j A_ij x_i = \lambda x_i,其中 A_ij = 1 如果存在边 i -> j。换句话说,它使用邻接矩阵的左特征向量。但是,请记住,特征向量中心性不被认为是有向图的最合适度量。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。