gpt4 book ai didi

networkx - 添加边缘属性会导致 TypeError : 'AtlasView' object does not support item assignment

转载 作者:行者123 更新时间:2023-12-01 19:59:42 35 4
gpt4 key购买 nike

使用networkx 2.0,我尝试通过循环所有边来动态添加附加边属性。该图是一个 MultiDiGraph。

根据tutorial似乎可以按照我在下面的代码中所做的方式添加边缘属性:

g = nx.read_gpickle("../pickles/" + gname)
yearmonth = gname[:7]
g.name = yearmonth # works
for source, target in g.edges():
g[source][target]['yearmonth'] = yearmonth

此代码引发以下错误:

TypeError: 'AtlasView' object does not support item assignment

我做错了什么?

最佳答案

如果您的图表是 nx.MultiGraph,则应该会发生这种情况。在这种情况下,您需要一个从 0n 的额外索引,其中 n 是两个节点之间的边数。

尝试:

for source, target in g.edges():
g[source][target][0]['yearmonth'] = yearmonth

本教程示例适用于 nx.Graph

关于networkx - 添加边缘属性会导致 TypeError : 'AtlasView' object does not support item assignment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47283340/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com