从 networkx 中的巨大图形中采样

Cap*_*ain 1 graph bigdata networkx python-2.7

我将从一个巨大的 Graph(大约 1.5M 边和 0.5M 节点)中采样。有什么原因networkx要实现它(我的意思是一个书面功能)?我将统一从节点中采样。(我只需要 networkx 中的一个工具)

如果您能提供任何帮助,我将不胜感激。

小智 7

我建议改进@xyzjayne 的回答

import random
k = 100
sampled_nodes = random.sample(G.nodes, k)
sampled_graph = G.subgraph(sampled_nodes)
Run Code Online (Sandbox Code Playgroud)

这将保留来自父图的正确边缘连接


xyz*_*yne 2

假设 G 是图并且您想要k = 100样本。

import random
k = 100
sampled_nodes = random.sample(G.nodes, k)
sampled_edges = random.sample(G.edges, k)
Run Code Online (Sandbox Code Playgroud)