【发布时间】:2020-06-21 09:56:09
【问题描述】:
我正在研究一个有向图的社交网络分析问题。当我将边导入到我的图形文件时遇到问题,由于某种原因,这使它成为无向的,从而无法测量诸如进/出度等中心性。
导入边缘和节点熊猫数据框
edges = pd.read_csv("./edges.csv", sep = ";")
nodes = pd.read_csv("./nodes_coordinates.csv", sep = ";")
设置有向图
G = nx.DiGraph()
nx.is_directed(G)
输出:真
G = nx.from_pandas_edgelist(edges, "from", "to")
nx.is_directed(G)
输出:假
如果这很重要,这也是我绘制节点的方式,但是如果我只做了这部分,它仍然有效:
data = nodes.set_index("node").to_dict("index").items()
G.add_nodes_from(data)
nx.is_directed(G)
输出:真
绘制图表等一切都很好,但它不再是定向的,我不知道为什么。感谢您的帮助!
【问题讨论】:
-
欢迎来到 SO!请将部分 csv 文件添加为纯文本而不是图像。在目前的形式中,它们并不是真正有用的。
-
当您执行
G = ....时,您会将右侧的任何内容分配给名称G。之前定义的G并不重要。先前的值被丢弃并替换为新值。例如,如果我有a=5,然后我有a=3,则a的值现在是3。没关系,之前是5。