Networkx:来自 pandas 数据框的网络图
Networkx: Network graph from pandas dataframe
我有以下数据集:
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)
生成下图:
这显示了 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')
我有以下数据集:
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)
生成下图:
这显示了 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')