AttributeError: у объекта 'Graph' нет атрибута 'node' - PullRequest
0 голосов
/ 23 октября 2019

У меня есть приведенный ниже код 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

1 Ответ

0 голосов
/ 28 октября 2019

Если вы используете NetworkX 2.4, используйте G.nodes [] вместо G.node []. Поскольку последний атрибут устарел. Смотри (https://networkx.github.io/documentation/stable/release/release_2.4.html#deprecations).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...