为了账号安全,请及时绑定邮箱和手机立即绑定

AttributeError:模块“networkx”没有属性

AttributeError:模块“networkx”没有属性

HUWWW 2022-10-06 16:14:32
B = nx.Graph()B.add_nodes_from(data['movie'].unique(), bipartite=0, label='movie')B.add_nodes_from(data['actor'].unique(), bipartite=1, label='actor')B.add_edges_from(edges, label='acted')A = list(nx.connected_component_subgraphs(B))[0]我在尝试使用时收到以下给出的错误nx.connected_component_subgraphs(G)。在数据集中有两个库(电影和演员),它的形式是二分图。我想获得电影节点的连接组件。---------------------------------------------------------------------------AttributeError                            Traceback (most recent call last)<ipython-input-16-efff4e6fafc4> in <module>----> 1 A = list(nx.connected_component_subgraphs(B))[0]AttributeError: module 'networkx' has no attribute 'connected_component_subgraphs'
查看完整描述

4 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

这在 2.1 版中已被弃用,最终在 2.4 版中被删除。

请参阅这些说明

利用(G.subgraph(c) for c in connected_components(G))

或者(G.subgraph(c).copy() for c in connected_components(G))


查看完整回答
反对 回复 2022-10-06
?
呼唤远方

TA贡献1856条经验 获得超11个赞

connected_component_subgraphs 已从 networkx 库中删除。您可以使用弃用通知中描述的替代方法。

对于您的示例,请参阅以下代码:

A = (B.subgraph(c) for c in nx.connected_components(B))
A = list(A)[0]


查看完整回答
反对 回复 2022-10-06
?
月关宝盒

TA贡献1772条经验 获得超5个赞

使用以下代码进行单行替代

A=list(B.subgraph(c) for c in nx.connected_components(B))[0]

或者你可以安装以前版本的networkx

pip install networkx==2.3


查看完整回答
反对 回复 2022-10-06
?
Helenr

TA贡献1780条经验 获得超3个赞

首先我得到

AttributeError:模块“matplotlib.cbook”没有属性“iterable”。

为了解决上述错误,我升级了 networkx 使用

pip install --upgrade --force-reinstall  network

它安装了 unetworkx-2.6.3,我得到了错误

AttributeError:模块 networkx 没有属性 connected_component_subgraphs。

我使用了 ABHISHEK D 提到的以下代码,它解决了。谢谢。

A=list(B.subgraph(c) for c in nx.connected_components(B))[0]


查看完整回答
反对 回复 2022-10-06
  • 4 回答
  • 0 关注
  • 365 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信