从 origin_id 和 destination_id 检测单向道路

问题描述

如何检测单向道路?

我有一个图 G(MultiDiGraph(G),带有起点(Id)和终点(Id)节点。我想检测单向道路。例如,如果从起点“1”到终点“有一条边” 2”和另一条从目的地“2”到起点“1”的边,那么这不是单向路。应该在这个图的边表中添加一列,称为单向(布尔值)。

 G = nx.from_pandas_edgelist(edges,'origin','destination',['key','id_edge','name','lanes','length','speed','capacity','function','oneway','geometry'],create_using=nx.MultiDiGraph())

为了检测单向道路,我已经尝试过这个(但不起作用):

oneway = []
for u,v,data in G.edges(keys=False,data=True):
    for a,b,data2 in G.edges(keys=False,data=True):
        if u==b and v==a:
            oneway.append(True)
        else:
            oneway.append(False)

对于应该添加的列,我试过这个:

edges['oneway']=edges.apply(lambda x: False,axis=1)

[![在此处输入图片描述][1]]

https://i.stack.imgur.com/slg0H.png

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)