如何从动态图创建出现矩阵?

How to create occurrence matrix from dynamic graph?

我有动态图的边列表,如下所示

G1=nx.read_edgelist('m_enron_employees_1Sorted.txt',create_using=nx.MultiGraph(), nodetype=int)
print(G1.edges())

[(13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 48), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 50), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 67), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147), (13, 147)]

这里我想创建一个出现矩阵,它捕获特定边缘出现的次数

我尝试了以下选项

count=0
tempo=-1
temp1=-1
app=[]
for edge in G1.edges():
    if((temp0,temp1)==(edge[0], edge[1]))
        count=count +1
    else:
      if count!=0:
          app.append((edge, count))
          temp0=edge[0]
          temp1=edge[1]
          count=1

但是,这种方法没有给出正确的结果

任何帮助将不胜感激

更易于使用 set 和内置 count 方法:

>>> edges = [(13, 48), (13, 48), ... ]
>>>
>>> freqs = {edge: edges.count(edge) for edge in set(edges)}
>>> freqs
{(13, 67): 49, (13, 48): 43, (13, 50): 12, (13, 147): 18}
>>> max(freqs, key=lambda k: freqs[k])
(13, 67)

不太确定“出现矩阵”是什么意思,因为看起来您正在做的只是计算每个边的频率。