属性错误:“图形”对象没有属性“节点”

2024-04-04

我有以下 python 代码来构建 knn 图,但出现错误: AttributeError: 'Graph' 对象没有属性 'node'。似乎 nx.Graph() 没有节点属性,但我不知道应该用它替换什么。

import networkx as nx
def knn_graph(df, k, verbose=False):
    points = [p[1:] for p in df.itertuples()]
    g = nx.Graph()
    if verbose: print ("Building kNN graph (k = %d)" % (k))
    iterpoints = tqdm(enumerate(points), total=len(points)) if verbose else enumerate(points)
    for i, p in iterpoints:
        distances = map(lambda x: euclidean_distance(p, x), points)
        closests = np.argsort(distances)[1:k+1] # second trough kth closest
        for c in closests:
            g.add_edge(i, c, weight=distances[c])
        g.node[i]['pos'] = p
    return g

如果您使用的是 NetworkX 2.4,请使用G.nodes[]代替G.node[]。后一个属性已被弃用。请参阅发行说明 https://networkx.github.io/documentation/stable/release/release_2.4.html#deprecations.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

属性错误:“图形”对象没有属性“节点” 的相关文章

随机推荐