networkx常用函数总结(持续更新)

您所在的位置:网站首页 edges怎么读 networkx常用函数总结(持续更新)

networkx常用函数总结(持续更新)

2024-01-01 11:32| 来源: 网络整理| 查看: 265

一.库函数 networkx常用函数总结 用途函数读取文件/生成图创建无向图G = nx.Graph()创建有向图G = nx.DiGraph()读取gml文件G=nx.read_gml('karate.gml',label='id')读取txt文件G = nx.read_edgelist("Email-Enron.txt")读取有权值的txt文件nx.read_weighted_edgelist(data)读取有权值的txt文件,并生成有向图nx.read_weighted_edgelist(data, create_using=nx.DiGraph())随机生成30个点,连接概率为0.05G = nx.erdos_renyi_graph(30, 0.05)添加结点/边从列表中添加节点[a,b,c]G.add_nodes_from(node)从列表中添加边[[a,b],[a,c]]G.add_edges_from(edge)判断判断两节点间是否有边Graph.has_edge(u, v)记数网络中结点的个数G.number_of_nodes()网络中边的个数G.number_of_edges()画图画网络图nx.draw_networkx(G)(显示标签)获取节点信息获取结点i的邻居节点G.neighbors(i)  或   G[i](在有向图中输出的是出度的邻居,G[i]会输出权重)输出k-shell为5的节点nx.k_core(G,5).nodes获取所有节点的度G.degree()获取某个节点的出度G.out_degree(i)获取节点i的属性G.nodes[i]["wight"]设置节点i的属性G.nodes[i]["wight"]=0.1为多个节点设置属性nx.set_node_attributes(G, 'wight', {i:0.2, j:0.1})查看图中所有点的信息G.nodes.data()获取边的信息查看边的信息G.edges['node1', 'node2‘]查看图中所有边的信息G.edges.data()输出文件将图输出为gephi文件nx.write_gexf(G,'your_file_name.gexf')将图输出为txt文件nx.write_edgelist(G,"file_name.txt",data = False)

计算节点中心性

(关键节点识别)

度中心性nx.degree_centrality(G)特征向量中心性nx.eigenvector_centrality(G)特征向量中心性(大网络)nx.eigenvector_centrality_numpy(G)介数中心性nx.betweenness_centrality(G)接近中心性nx.closeness_centrality(G)pageranknx.pagerank(G)HITSnx.hits(G)最短路径/最短路径长度两点间最短路径nx.shortest_path(G,source=1,target=155)两点间的最短路径长度nx.shortest_path_length(G,source=1,target=155)dijkstra路径nx.dijkstra_path(G,1,155)dijkstra路径长度nx.dijkstra_path_length(G,1,155)计算整个图的平均最短路径长度nx.average_shortest_path_length(G)当前节点与可达节点的最短路径nx.single_source_shortest_path(G, 0) 图中两两节点计算最短路径长度的dict(nx.all_pairs_shortest_path(G))

二.自定义函数:

1.依一定概率连边

def rand_edge(vi,vj,p=0.2): #默认概率p=0.2 probability =random.random()#生成随机小数 if(probability


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3