Graph_Tool-更有效地初始化边缘属性

时间:2019-02-21 21:25:59

标签: python-3.x graph-tool

我正在使用图形工具来计算一些集中度度量。

from graph_tool.all import *
graph = Graph(directed=True)

在执行此操作之前,我需要初始化边缘属性。我正在执行以下操作:

weight = graph.new_edge_property('double')
graph.edge_properties['weight'] = weight

添加边缘(来自数据框)。数据框还具有列权重。

edges = df[['source', 'target']].values
graph.add_edge_list(edges, hashed=True, eprops=[weight])

我想使用一种比这种方法更有效的方法来初始化边缘属性(我想避免循环):

weight = df[['weight']].values
for edge  in graph.get_edges():
   graph.edge_properties["weight"][edge] = weight[graph.edge_index[edge]]

能否请您提出一种更有效的初始化边缘属性的方法? 该图是基于非常大的数据框(3000万行)构建的。

0 个答案:

没有答案