如何在python中从facebook创建一个相互友谊的邻接矩阵

时间:2011-12-18 19:42:57

标签: python facebook facebook-fql adjacency-matrix

我正在做一个关于Facebook网络社交网络分析的项目。我必须得到我所有的朋友,我的朋友们彼此是朋友,我的网络内部是相互的朋友。我这样做了,我得到了我的朋友和邻接的所有身份,现在我必须形成一个邻接矩阵,表明我的两个朋友是否是朋友。例如: A和B是朋友,A和C是朋友,但B和C不是朋友。这看起来像这样:

  A  B  C

A 0  1  1

B 1  0  0

C 1  0  0

因为我已经在python中有了id和邻接的列表,我也应该在python中做矩阵,所以如果你有任何想法或基本算法如何输入1和0,我会很感激。

2 个答案:

答案 0 :(得分:1)

我解决了这个问题,它只需要2个循环遍历列表并比较用户id是否在邻接列表中,如果是这种情况,请将该条目设为1,否则为0.

答案 1 :(得分:0)

我认为这种结构更好地实现为graph。例如,请查看NetworkX

无论如何,如果你真的需要矩阵,矩阵可以简单地实现为列表列表,如下所示:

m = [[0, 1, 1],
     [1, 0, 0],
     [1, 0, 0],]

但是如果您打算进行任何矩阵操作,则应该查看numpy库。