对象在多个图团中出现

我有一段代码,目的是查找节点的团,而这些节点是Django模型对象的ID:

    import networkx as nx    final_groups = []    graph = nx.Graph()    for img_test in Same_Img_Test.objects.filter(id__in=test_ids, is_same=1):        graph.add_edge(img_test.product_1.id, img_test.product_2.id)    for x in nx.find_cliques(graph):        final_groups.append(x)        print x

我得到的结果是:

[1293856L, 909760L][1293856L, 909730L][1293856L, 909797L][1293856L, 909767L][1293856L, 909741L]

我的问题是:同一个ID(1293856L)怎么会出现在多个团中?结果不应该是像这样的吗:

[1293856L, 909760L, 909730L, 909797L, 909767L, 909741L]

我做错了什么?

编辑:我原本寻找的是nx.connected_components(graph)而不是nx.find_cliques(graph)


回答:

是的,同一个ID可以出现在多个团中(大小相同或不同)。

我认为你展示的只是大小为2的团,可能你期望的输出会在下面出现。

[1293856L, 909760L, 909730L, 909797L, 909767L, 909741L]只有当这些ID中的每一对之间在给定图中都有边时,才会作为一个团出现。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注