如何从具有多列的 Pandas 数据框中定义 NetworkX 图

问题描述

我有一个 Pandas 数据框,它根据某些特征捕获发票是否已作为争议提出的信息。我想在此之上运行社区检测以搜索模式。但对如何从中创建图表感到困惑。尝试如下:

import pandas as pd
import networkx as nx
from itertools import combinations as comb
data = [[4321,543,765,3,2014,54,1,0],[2321,657,654,7,2017,59,1]]
df = pd.DataFrame(data,columns = ['NetValueInDocCurr','NetWeight','Volume','BillingItems','FISCALYEAR','TaxAmtInDocCurr','Description_Bulk','Description_Car_Care','Description_Packed','Description_Services','Final_dispute'])
edges = set(comb(df.columns,2))

G = nx.Graph() 
G.add_edges_from(edges)

我目前的假设是将列名称定义为节点,将所有列之间的成对关系定义为边,将列值定义为边权重。这是正确的方法吗?如果是,对定义权重的代码有什么帮助吗?我的想法是从一个完整的图开始,并使用 Girvan-Newman 之类的除法方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)