所以。我试图通过有向图找到路径
我从一个有3列的熊猫数据框开始:“源”、“目标”、“权重”。权重用于跟踪每个目标的动作(只是一个数字)
然后我将df转换为边缘列表:
edge_list = nx.from_pandas_edgelist(df, 'Source','Target','weight')
然后,为了更好地度量,我将这个转换成一个有向图(我相当确信这是正确的)
directed_graph = nx.DiGraph(edge_list)
然而,每当我开始在图中搜索路径时,我得到的是无向路径。我检查了又检查了,但是如果我定义了一个路径
path = nx.shortest_path(directed_graph,source=A,target=B,weight='weight')
按照图中找到的定向路径,无法找到返回的路径。(然而,它可以通过沿着无向路径找到,所以我想这是个问题)
您可以通过指定
create_using=nx.DiGraph()
直接创建有向图nx.from_pandas_edgelist
返回一个图的实例,而不是一个边列表,因此首先创建一个图,然后通过为每个无向边添加两个有向弧(i,j)
,(j,i)
,将其转换为有向图例如:
相关问题 更多 >
编程相关推荐