Мне нужно получить доступ к значениям центральности собственного вектора для всех вершин графа. Я использую Graph-Tool для этого.
Я пытался вычислить его так же, как центральность близости, но так как в инструменте графа близость возвращает только карту свойств вершины, тогда как собственный вектор возвращает оба наибольшее собственное значение (взвешенной) смежностиматрица и карта свойств вершин не работают одинаково.
node_closeness = []
for vertex in G.vertices():
a = closeness(G)[vertex]
node_closeness.append(a)
Этот код работает для близости, но для собственного вектора:
node_eigenvector = []
for vertex in G.vertices():
a = eigenvector(G)[vertex]
node_eigenvector.append(a)
не работает.
Итак, это дает мне эту ошибку:
a = eigenvector(G)[vertex]
TypeError: tuple indices must be integers, not Vertex
Но я думаю, что это происходит потому, что eigenvector возвращает собственное значение и свойство Vertex map. Кто-нибудь знает как это исправить?