1

Python igraph ライブラリを使用して .net ファイルを読み込もうとしています。サンプルコードは次のとおりです。

import igraph
g = igraph.read("s.net",format="pajek")

しかし、このスクリプトを実行しようとすると、次のエラーが発生しました。

Traceback (most recent call last):
File "demo.py", line 2, in <module>
g = igraph.read('s.net',format="pajek")
File "C:\Python27\lib\site-packages\igraph\__init__.py", line 3703, in read
return Graph.Read(filename, *args, **kwds)
File "C:\Python27\lib\site-packages\igraph\__init__.py", line 2062, in Read
return reader(f, *args, **kwds)
igraph._igraph.InternalError: Error at .\src\foreign.c:574: Parse error in Pajek
file, line 1 (syntax error, unexpected ARCSLINE, expecting VERTICESLINE), Parse error

そのあたりのヒントを教えてください。

4

1 に答える 1

2

ファイルが通常の Pajek ファイルではないか、igraph の Pajek パーサーがこの特定の Pajek ファイルを読み取ることができません。(Pajek ファイル形式には正式な仕様がないため、Pajek パーサーを作成するのはちょっとした失敗です)。Pajek ファイルをメールで送っていただければ、確認いたします。

更新*Vertices: Pajek ファイルのセクションがありませんでした。*Vertices N(グラフ内の頂点の数はどこですか)のような行を追加するNと、問題が解決します。ファイル形式の正式な仕様がないため、この行が Pajek ファイルで必須であるとは言えませんが、これまでに見たすべての Pajek ファイルにはこの行が含まれていたため、かなり標準的であると思います。

于 2013-02-25T09:54:53.633 に答える