2009-11-04 10 views
1

У меня есть сеть, загруженная в объект igraph G, который имеет 198 вершин и 214 ребер. Если я бегу:Как получить центральные значения собственных значений вершины в R с igraph

eig<-evcent(G)$vector 

В результате eig вектор с 2172 элементами, а не 198 элементов. The documentation on the package утверждает, что возвращает «центральные позиции позиций v». Любые идеи о том, как получить значения собственных значений для каждой вершины?

+0

Я немного использовал igraph, но обычно это нормально для меня. Возможно, вы захотите предоставить дополнительную информацию о G. Можете ли вы предоставить небольшой примерный график для воспроизведения поведения? – Shane

ответ

2

Этот ответ был недавно задан (и ответил) в списке рассылки.

Отметить эту тему «Eigenvector Centrality» thread. Похоже, что перекомпиляция библиотеки R/igraph может быть в порядке, но должна быть довольно простой.

+0

В этой теме есть еще одна проблема, о которой я забыл упомянуть: сообщаемые значения - все <0. Я попытаюсь использовать этот подход, хотя мне еще предстоит перекомпилировать что-либо в R + MacOS X раньше. – Mike

+0

Компиляция R на Mac очень проста. Просто убедитесь, что у вас есть последняя версия XCode для вашей ОС, и возьмите и установите установщик gfortran отсюда (igraph не использует fortran, но другие пакеты делают): http://cran.r-project.org/bin /macosx/tools/gfortran-4.2.3.dmg –

+0

Было бы неплохо узнать, исправляет ли эта проблема повторная компиляция. Начиная с версии R2.10.1 на MacOS X параметр options to evcent (...), зарегистрированный здесь http://igraph.sourceforge.net/doc/R/evcent.html, игнорирует большинство вещей, которые вы выбрасываете там, включая $ start, упомянутый в сообщении форума. – ayman