networkx中的from_pandas_edgelist
时间: 2023-11-28 15:03:55 浏览: 871
PyPI 官网下载 | dwave_networkx-0.6.9.tar.gz
networkx中的from_pandas_edgelist是一个函数,用于将Pandas DataFrame格式的边列表转换为networkx图形。
具体来说,该函数需要三个参数:源节点名称列、目标节点名称列和边权重列。它还可以接受其他参数,如创建的图形类型(有向图或无向图)和图形名称等。
例如,假设我们有一个Pandas DataFrame df,其中包含两列“source”和“target”,以及一列“weight”表示边的权重。我们可以使用以下代码将其转换为networkx图形:
```python
import networkx as nx
import pandas as pd
# 构造一个简单的DataFrame
df = pd.DataFrame({'source': ['A', 'B', 'C'],
'target': ['B', 'C', 'A'],
'weight': [1, 2, 3]})
# 将DataFrame转换为networkx图形
G = nx.from_pandas_edgelist(df, source='source', target='target', edge_attr='weight')
# 打印图形的节点和边
print('Nodes:', G.nodes())
print('Edges:', G.edges(data=True))
```
输出结果为:
```
Nodes: ['A', 'B', 'C']
Edges: [('A', 'B', {'weight': 1}), ('A', 'C', {'weight': 3}), ('B', 'C', {'weight': 2})]
```
可以看到,我们成功地将DataFrame转换为了一个有权重的无向图形。
阅读全文