我有一个包含150,000行的txt文件,每行包含一个数字标识符(即1,2,3 ......)
每一行与另一行有某种关系,这意味着该行的标识符在其他行中提及,或者提及其中的其他行。
例如
#1 - string #24 #11
#11 - string #24 #25
#245 - string #1 #11
因此,在这种情况下,第245行提到第1行和第11行,但第1行也提到第11行等。
我使用import networkx as nx
和函数映射整个txt文件
G=nx.Graph()
,以便稍后操纵不同节点和边缘之间的关系。
我试图理解如何提高效率,运行时间目前非常长(小时+),我试图了解这个函数是否是导致运行时间过长的原因:
G=nx.Graph()
for l in txt:
res = re.findall("#\d{3,10}",l)
if len(res) > 1:
for num in res[1:]:
G.add_edge(res[0],num)
return G
有没有办法让它更有效率?