use*_*526 8 python graph networkx network-analysis
我正在学习networkx库并使用twitter转发有向图数据.我首先将数据集读入pandas df(列是'from','to','weight'),并希望使用下面的代码将前300行(转推)放入图形中:
tw_small = nx.from_pandas_dataframe(edges_df[:300],source='from',
target='to',edge_attr=True)
Run Code Online (Sandbox Code Playgroud)
我认为它正确地创建了一个图形,但是当我运行时tw_small.is_directed(),它表示False(无向图)并且我绘制了一个图形,nx.draw()但它也没有显示方向.
有人可以帮我找到制作有向图的正确方法吗?
谢谢.
Ari*_*ric 13
添加可选关键字参数create_using = nx.DiGraph(),
tw_small = nx.from_pandas_dataframe(edges_df[:300],source='from',
target='to',edge_attr=True,
create_using=nx.DiGraph())
Run Code Online (Sandbox Code Playgroud)
小智 6
您可以编写edgelist而不是数据框,它对我有用,当我使用from_pandas_dataframe : "AttributeError: module 'networkx' has no attribute 'from_pandas_dataframe“
Graph = nx.from_pandas_edgelist(df,source='source',target='destination', edge_attr=None, create_using=nx.DiGraph())
Run Code Online (Sandbox Code Playgroud)
您可以测试您的图形是否有向或不使用:nx.is_directed(Graph)。你会得到真实的。