Назначение идентификатора группы компонентам в networkxPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Назначение идентификатора группы компонентам в networkx

Сообщение Гость »


У меня есть граф, состоящий из узлов, в которых хранятся «parentid» отелей и «phone_search». Моя основная цель при построении этого графика заключалась в том, чтобы соединить все «родительские идентификаторы», которые имеют одинаковый «phone_search» (рекурсивно), например, если родительский идентификатор A имеет «phone_search» 1,2; У Б — 2,3; С имеет 3,4; D имеет 5,6, а E 6,7, тогда A, B, C будут сгруппированы в 1 кластер, а D и E — в другой кластер.

Это мой код для построения сети:

from pymongo import MongoClient # Чтобы импортировать клиент для MongoDB импортировать networkx как nx импортный маринованный огурец G = nx.График() #Определение переменных отели = [] телефоны = [] всеРезультат = [] окончательныйРезультат = [] #dictNx = {} # Инициализация клиента MongoDB клиент = МонгоКлиент() # Связь БД = клиент.отель коллекция = db.hotelData для сообщения в коллекции.find(): Hotels.append(сообщение) для отеля в отелях: пытаться: телефоны = отель["phone_search"].split("|") для телефона в телефонах: если телефон == '': проходить еще: G.add_edge(отель["родительский"],телефон) кроме: телефоны = отель["phone_search"] если телефон == '': проходить еще: G.add_edge(отель["родительский"],телефон) # nx.write_gml(G,"export.gml") Pickle.dump(G, open('/home/justdial/newHotel/graph.txt', 'w')) Что я хочу сделать: я хочу назначить идентификатор группы каждому компоненту и сохранить его в словаре, чтобы я мог каждый раз легко получать к ним доступ непосредственно из словаря.

Пример: Gid 1 будет содержать некоторые родительские идентификаторы и телефонные_поиски, находящиеся в одном кластере. Аналогично Gid 2 будет содержать узлы из другого кластера и так далее...

У меня есть еще одно сомнение. Доступ к узлам из словаря с использованием идентификатора группы быстрее, чем выполнение bfs на графе networkx?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»