Ошибка фрейма данных при преобразовании iGraph в объект gexf - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь преобразовать объект iGraph в объект gexf с помощью пакета rgexf, чтобы я мог написать файл, пригодный для использования с Gephi, который я предпочитаю для сетевой визуализации.

Мой объект iGraph создается путем чтения в двух CSV: h.edges и h.nodes. Существуют как атрибуты ребер, так и узлов. После считывания файлов я создаю объект iGraph, вычисляю показатели центральности, а затем присоединяю показатели центральности в качестве атрибутов узла. Код выглядит так:

iNet = graph_from_data_frame(d=h.edges, vertices = h.nodes, directed = F)
V(iNet)$degree = degree(iNet)                        
V(iNet)$eig = evcent(iNet)$vector   
V(iNet)$betweenness = betweenness(iNet)

Кажется, это работает нормально, поскольку я могу выполнять все обычные функции iGraph - строить график, вычислять центральности, определять сообщества и т. Д. c. Моя проблема возникает, когда я пытаюсь преобразовать это в объект gexf. Я запускаю следующий код:

library(rgexf)
iNet.gexf  igraph.to.gexf(iNet)

Но получите следующее сообщение об ошибке:

Error in `[.data.frame`(x, r, vars, drop = drop) : 
  undefined columns selected

Кто-нибудь знает, что происходит? Хотя я знаю, что приведенный здесь пример можно сделать, просто загрузив два CSV-файла прямо в Gephi и выполнив там вычисления, конечная цель состоит в том, чтобы иметь возможность прикрепить более надежные вычисления iGraph в качестве атрибутов способами, которые Gephi не может.

...