Python 创建NetworkX图形时出现空\u graph()错误消息
我从Python中获得以下错误消息: 空的_graph()接受0到2个位置参数,但给出了3个 尽管我浏览了所有的网站,但我发现这个问题并没有解决。我从一个数据集创建了一个相关矩阵(因此图的边应该加权),然后定义了一个panda edgelist来创建图。我使用了以下代码:Python 创建NetworkX图形时出现空\u graph()错误消息,python,pandas,networkx,Python,Pandas,Networkx,我从Python中获得以下错误消息: 空的_graph()接受0到2个位置参数,但给出了3个 尽管我浏览了所有的网站,但我发现这个问题并没有解决。我从一个数据集创建了一个相关矩阵(因此图的边应该加权),然后定义了一个panda edgelist来创建图。我使用了以下代码: corr = input_data.corr() df = corr.stack().reset_index() df.columns = ['source', 'target', 'weight'] df = df[df[
corr = input_data.corr()
df = corr.stack().reset_index()
df.columns = ['source', 'target', 'weight']
df = df[df['weight'] != 0]
g = nx.from_pandas_edgelist(df, 'source', 'target', ['weight'])
panda_edgelist的样子如下:
source target weight
AUT AUT 1.0
AUT BEL 0.9915461015887707
AUT BGR 0.8833592506356065
AUT CHE 0.8338789009282549
... and so on...
以下是错误消息:
回溯(最近一次呼叫最后一次):
文件“”,第1行,g=nx.from_pandas_edgelist(df,'source','target','weight',nx.DiGraph)
文件“C:.\convert_matrix.py”,第323行,在from_pandas_edgelist g=nx.empty_图中(0,使用创建_)
文件“”,第2行,在空图形中
文件“C:.\utils\decorators.py”,第287行,在节点或编号iter\u wa=iter中(哪个参数)
TypeError:empty_graph()接受0到2个位置参数,但给出了3个
我不确定我做错了什么。有人能帮我吗
提前谢谢你 谢谢你的快速回复。不幸的是,我也尝试了
g=nx。从\u pandas\u edgelist(df,'source','target',edge\u attr='weight')
但是没有帮助。实际上,使用这里的小输入数据,您的代码正在工作。我会重新编译,将您输入的数据帧打断,以查看哪些数据失败。过滤权重后打印(df)。您的代码在我的系统上运行良好。也许您想传递第五个参数,例如,g=nx.from_pandas\u edgelist(df,'source','target','weight',nx.DiGraph)
谢谢您的快速回复。不幸的是,g=nx.from\u pandas\u edgelist(df,'source','target','weight',nx.DiGraph)
也不起作用。我还从数据帧中排除了所有小于0的权重df=df[~(df['weight']你能提供代码生成一个df样本以便我们进行故障排除吗?也只是确认一下,你的问题在于生成图形是吗?