我试图在Python语言的igraph
包中查看eigenvector_centrality()
的函数定义,但是找不到。我想了解他们是如何计算有向图和无向图的特征向量中心性的。任何链接到源代码或使用的计算都会非常有帮助。
发布于 2021-07-10 12:09:00
在https://github.com/igraph/python-igraph下可以看到igraph
的源代码。
您要查找的eigenvector_centrality
的函数定义可能位于以下文件下:https://github.com/igraph/igraph/blob/2ceb15db7983a15e499844daddd1e1aa72cb0138/src/centrality/centralization.c,该文件采用C
语言。
发布于 2021-07-12 14:44:44
igraph使用ARPACK来计算特征向量中心性。ARPACK是一个用于寻找稀疏矩阵的特征值/特征向量的通用软件包。
从igraph 0.9开始,您会在igraph的C核心(link)中找到src/centrality/centrality_other
中的源代码,尽管我不认为查看它会有什么特别的帮助。如果您对实现有特定的顾虑,您应该直接询问它们。
一些可能会有帮助的注意事项:
仅对于连通图,
\sum_j A_ij x_i = \lambda x_i
A_ij = 1
if is a edge i -> j
。换句话说,它使用邻接矩阵的左特征向量。但是,请记住,对于有向图来说,特征向量中心性并不被认为是最合适的度量。https://stackoverflow.com/questions/68324397
复制相似问题