У меня есть следующие даты панды:
df = pd.DataFrame({
'id_emp':[13524791000109, 12053850000137, 4707821000113],
'name_emp': [
'JL Consultores',
'GRAAL OURINHOS',
'SOJA COMERCIO DE DERIVADOS DE PETROLEO LTDA'
],
'name_dep': [
'DIONILSO MATEUS MARCON',
'JOSE AUGUSTO ROSA',
'LUCIO ANTONIO MOSQUINI'
],
'donnated_value': [ 750.00, 5000.00, 27350.00],
'donnated_amount': [1,1,1],
'reimbursed_value':[36000.00,410.55, 241.22],
'amount_reimbursed': [1,2,1],
'roi':[4800.00, 8.21,0.88]
})
Мне нужно создать ориентированную сеть, где df ['name_dep'] и df ['id_emp] являются узлами. Затем каждая строка информационного кадра содержит два узла, связанных ребром с весом. Вес ребер согласуется с колонкой roi: для значений roi от 0 до 100 вес равен 1; от 100 до 1000, вес равен 2; До 1000, вес равен 3. Как показано ниже, я могу построить сеть для определенного name_dep:
G = nx.Graph()
deputado = 'DIONILSO MATEUS MARCON'
lista_subset_graph = list(df[df["name_dep"] == deputado]["id_emp"]) +
[deputado]
H = G.subgraph(lista_subset_graph)
nx.draw(H, style = "solid", with_labels = True)
plt.savefig("teste.png")
plt.show()
Теперь необходимо построить сеть как все узлы и с весом по краям. Я ценю любую помощь.