from_pandas_adjacency#

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

返回一个从 Pandas DataFrame 生成的图。

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

Parameters:
dfPandas DataFrame

图的邻接矩阵表示

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

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

Notes

对于有向图,明确提及 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 图中的属性键。

Examples

边上有简单整数权重:

>>> 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 from pandas adjacency matrix' 的图,包含 2 个节点和 3 条边