from_pandas_adjacency#

from_pandas_adjacency(df, create_using=None)[source]#

从 Pandas DataFrame 返回一个图。

Pandas DataFrame 被解释为图的邻接矩阵。

参数
dfPandas DataFrame

图的邻接矩阵表示。

create_usingNetworkX 图构造函数,可选 (默认=nx.Graph)

要创建的图类型。如果传入的是图实例,则会在填充前清空。

另请参阅

to_pandas_adjacency

备注

对于有向图,请明确指定 create_using=nx.DiGraph,df 的 i,j 条目对应于从 i 到 j 的边。

如果 df 每个条目具有单一数据类型,它将被转换为相应的 Python 数据类型。

如果您在单独的 dataframe df_nodes 中存储了节点属性,您可以使用以下代码将这些属性加载到图 G

` df_nodes = pd.DataFrame({"node_id": [1, 2, 3], "attribute1": ["A", "B", "C"]}) G.add_nodes_from((n, dict(d)) for n, d in df_nodes.iterrows()) `

如果 df 具有用户指定的复合数据类型,则数据字段的名称将用作结果 NetworkX 图中的属性键。

示例

边的简单整数权重

>>> import pandas as pd
>>> pd.options.display.max_columns = 20
>>> df = pd.DataFrame([[1, 1], [2, 1]])
>>> df
   0  1
0  1  1
1  2  1
>>> G = nx.from_pandas_adjacency(df)
>>> G.name = "Graph from pandas adjacency matrix"
>>> print(G)
Graph named 'Graph from pandas adjacency matrix' with 2 nodes and 3 edges