微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Networkx:来自熊猫数据框的网络图

如何解决Networkx:来自熊猫数据框的网络图

我有以下数据集:

Company_ID  Firm_Name
125911      Ampersand 
125911      BancBoston 
32679       BP Corp 
74240       CORNING 
32679       DIEBOLD 
32679       DIEBOLD 
74240       Fidelity 
74240       Greylock
32679       INCO 
67734       INCO 
67734       Innova
32679       Kleiner 
67734       Kleiner 
67734       Kleiner 
67734       Mayfield
32679       Pliant 
67734       Pliant 
67734       Sofinnova 
43805       Warburg 

数据框显示不同投资公司在一年内投资同一家公司的时间。我只想创建 Firm_ID 之间的连接的网络图。例如,Ampersand 和 BancBoston 都投资于同一家公司,因此应该是相关联的。我试过的代码是:

G = nx.Graph()
G = nx.from_pandas_edgelist(df,'Company_ID','Firm_Name')
nx.draw_shell(H,with_labels=True)

生成如下图:

enter image description here

显示了 Company_ID 和 Firm_Name 的连接。我只想将这些公司作为节点,如果他们投资了同一家公司,那么它们就可以连接在一起。我没有发现使用 networkx 的任何类似问题或类似数据集。非常感谢任何帮助!

解决方法

试试 merge

out = df.merge(df,on=['Company_ID'])
G = nx.Graph()
G = nx.from_pandas_edgelist(df,'Firm_Name_x','Firm_Name_y')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。