首页 > 解决方案 > 找到共同邻居的数量

问题描述

嗨,你能帮我吗?我怎样才能找到网络中共同邻居的数量这是我的代码,但我不知道如何继续它???

`

import networkx as nx
import pandas as pd
import numpy as np
import matplotlib.pyplot  as plt

G=pd.read_csv('karate.txt',header=None,delim_whitespace=True,names=['n1','n2'])
G2=nx.from_pandas_edgelist(G,source='n2',target='n1')
#print(G2.edges())
#print(G2.degree())
e=[]


for n in G2:
    for c in G2:
        if n!=c:  
         G5=sorted(nx.common_neighbors(G2,n,c))
        
         edges.append([n,c,len(G5)])
        
    print(edges)`

标签: pythonnetworkinggraphsocialsna

解决方案


这是一个单线,它将计算节点 1 和 2 之间的公共邻居

import networkx as nx

G = nx.karate_club_graph()

common_nbor = len(set([n for n in G.neighbors(1)]).intersection(set([n for n in G.neighbors(2)])))

common_nbor = 4


推荐阅读