我正在寻找将 Pajek 数据集转换为 networkx Graph()。该数据集来自哥斯达黎加家庭关系。我正在使用非常方便的networkx.read_pajek(pathname)功能,但遇到了一些麻烦。更改到正确的目录后,我在终端窗口 (iPython) 上执行以下命令,导入networkx as nx并matplotlib.pyplot as plt:
>> G = nx.read_pajek('SanJuanSur.paj')
>> nx.draw(G)
>> fig = plt.figure(figsize = (15, 10))
>> nx.draw(G)
>> plt.show()
Run Code Online (Sandbox Code Playgroud)

显然,发生了一些不寻常的事情,希望经验丰富的人能够帮助我。看起来该.paj文件有许多不同的部分塞入我下载的一个文件中。不太确定如何分解它,因为没有评论,而且看起来 Pajek 一般都是用 GUI 来操作的。
>> G.node['f49']
{'id': '49', 'shape': '0.5000', 'x': 0.5533, 'y': 0.3766}
Run Code Online (Sandbox Code Playgroud)
希望使用节点的状态(范围从 0-14 的属性)。谢谢你!
networkx Pajek 文件阅读器无法处理包含额外“分区”数据的 .paj 格式文件。不幸的是,它似乎有效。但显然你会得到额外的节点和边。
如果删除文件 SanJuanSur2.net 中从 *Edges 开始到末尾的所有内容,您可以使用 networkx.read_pajek() 读取它。
| 归档时间: |
|
| 查看次数: |
1737 次 |
| 最近记录: |