Computing average path length

10 次查看(过去 30 天)
I'm using karate.gml dataset, from two visualization software gephi and SocNetV both gives me an average path length of 2.408. I want to compute the average path length in matlab using the same dataset, but mine gives me 1.76. My matlab procedure is below:
I add the distance {d} returned by the shortestpath function {[P,d] = shortestpath(G,c,nodesize);} to an array I've declared and afterwards find the mean. Not sure what I'm doing wrong.
size = nodesize;
x = [];
for c = 1:size
[P,d] = shortestpath(G,c,nodesize);
x = [x, d];
end
answer = mean(x)
  1 个评论
Walter Roberson
Walter Roberson 2018-9-20
I would tend to think that average path length would include alternative paths, not just the shortest path.

请先登录,再进行评论。

采纳的回答

Isaac Osei Agyemang
编辑:Walter Roberson 2018-9-20
size = nodesize;
x = [];
for c = 1:size
for dest=1:size
if(c~=dest)
[P,d] = shortestpath(G,c,dest);
x = [x, d];
end
end
answer = mean(x)

更多回答(1 个)

KSSV
KSSV 2018-9-20
编辑:KSSV 2018-9-20
nodesize = numnodes(G);
thesize = nodesize;
x = zeros(thesize,1);
for c = 1:size
[P,d] = shortestpath(G,c,nodesize);
x(C) = d ;
end
answer = mean(x)
  7 个评论
Isaac Osei Agyemang
编辑:Walter Roberson 2018-9-20
I've been able to work things out, thanks for your help.
size = nodesize;
x = [];
for c = 1:size
for dest=1:size
if(c~=dest)
[P,d] = shortestpath(G,c,dest);
x = [x, d];
end
end
answer = mean(x)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Matrix Computations 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by