Python 求无向图中节点的平均值
我已经编写了一个程序,为五个节点提供以下输出,这是从每个节点到不同节点的最短路径:Python 求无向图中节点的平均值,python,Python,我已经编写了一个程序,为五个节点提供以下输出,这是从每个节点到不同节点的最短路径: G1= {'D': 3.0, 'E': 4.0, 'B': 1.0, 'C': 5.0, 'A': 0} G1={'D': 2.0, 'E': 3.0, 'B': 0, 'C': 4.0, 'A': 1.0} G1={'D': 2.0, 'E': 3.0, 'B': 4.0, 'C': 0, 'A': 5.0} G1={'D': 0, 'E': 1.0, 'B': 2.0, 'C': 2.
G1= {'D': 3.0, 'E': 4.0, 'B': 1.0, 'C': 5.0, 'A': 0}
G1={'D': 2.0, 'E': 3.0, 'B': 0, 'C': 4.0, 'A': 1.0}
G1={'D': 2.0, 'E': 3.0, 'B': 4.0, 'C': 0, 'A': 5.0}
G1={'D': 0, 'E': 1.0, 'B': 2.0, 'C': 2.0, 'A': 3.0}
G1={'D': 1.0, 'E': 0, 'B': 3.0, 'C': 3.0, 'A': 4.0}
我试图从上面的输出中找到所有节点的平均值。我尝试了以下代码:
for s in G:
G1=ShortestPaths(G,s)#this gives the output i mentioned above
mean= sum([G1[s] for s in G1])/(len(G1)-1)# this is where i am not getting result
return float(mean)
但是它只给出最后一行。我需要字典中所有值的总和(25个值之和),除以20(因为我的每一行中都有一个零。我不应该这么认为)。谁能用一个简单的代码帮我解决这个问题??我不想。项和其他内置函数。
在循环结束后计算平均值:total = 0.0
count = 0.0
for s in G:
G1=ShortestPaths(G,s)
total += sum([G1[s] for s in G1])
count += (len(G1)-1)
return float(total / count) if count else None
当然,这只是给你最后一行的平均值。那是当时唯一已知的对G1的引用。@AlexThornton:我知道。我是python新手。我不知道如何存储每行的值。你能帮我一下吗?