Не удалось преобразовать пограничную сеть передачи данных X - PullRequest
0 голосов
/ 22 сентября 2019

У меня есть файл small-gephiready.tsv, который имеет следующую структуру:

Source  Target     Type
1         2     Undirected
1         3     Undirected
1         4     Undirected
1         5     Undirected
1         6     Undirected

Я хочу открыть его через NetworkX в среде Python с кодом:

G = nx.read_edgelist("small-gephiready.tsv", nodetype=int)

Однако возвращается ошибка «Не удалось преобразовать данные ребра (['Type']) в словарь".Я думал, что Тип данных является строкой, поэтому я добавил data=('Type',str) после nodetype = int, и он возвращает str без атрибута декодирования.

Я неправильно пишу функцию read_edge или есть что-то, что я должен проверить в файле?Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 24 сентября 2019

Это мой ответ: очевидно, если вы даете заголовки для файла, вам нужны некоторые параметры для их чтения.Тем не менее, мне нужна функция read_csv для pandas и ее передача в network_x с помощью функции from_pandas_edgelist.

f = pd.read_csv("small-gephiready.tsv", sep='\t')
G = nx.from_pandas_edgelist(f, source='FromNodeId', target='ToNodeId')
...