微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

鄂尔多斯人一网络中的随机节点

如何解决鄂尔多斯人一网络中的随机节点

我是 networkx 的新手,我想从 erdos_renyi 图中提取一个随机节点,我正在使用此代码,但我得到一个空列表

N = 1000 
p = 0.01 
G = nx.erdos_renyi_graph(N,p)
node = list(random.choice(G.nodes()))

解决方法

你的调用顺序有点偏离:

node = list(random.choice(G.nodes()))

G.nodes() 是图的节点视图;你需要一个节点列表,G.nodes

node = [ random.choice(list(G.nodes)) ]

将节点视图变成一个列表,从中获取一个随机元素,然后将其填充到一个列表中(我不确定你为什么想要一个包含一个元素的列表)。

,

由于图中的节点是0到999之间的整数,你也可以直接用random.randrange(N)得到一个随机节点。 在任意图形上,您可以在调用 convert_node_labels_to_integers 后执行相同操作。

import networkx as nx
import random

N = 1000
p = 0.01
G = nx.erdos_renyi_graph(N,p)
print(G.nodes())
# prints 0 to N - 1

node = [random.randrange(N)]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。