繁体   English   中英

从 csv 文件中读取边列表并使用 .networkx 创建一个图

[英]read the edge list from a csv file and create a graph with networkx

大家好,我想从 csv 文件中读取边列表,并使用 .networkx 创建一个图形来计算 python 的介数中心性。我的代码是:

import pandas as pd
import networkx as nx
df = pd.read_csv('edges1.csv')
Graphtype = nx.Graph()
G = nx.from_pandas_edgelist(df, edge_attr='genre_ids', create_using=Graphtype)
centrality = nx.betweenness_centrality(G, normalize=False)
print(centrality)

edges1.csv 有 97180 行:

Surce,Target,genre_ids
Avatar,Violent Night,18
Harry Potter,The Woman King,20
Happy Feet, Froze,23
so on....

我的代码给我错误: KeyError: 'source' 我能怎么做?

加载数据时,确保csv文件中的列名称与默认预期值匹配或指定自定义名称。

如果列名是“Surce,Target,genre_ids”(如 OP 提供的代码片段中所示),则相应的命令是:

G = nx.from_pandas_edgelist(
    df,
    source="Surce",
    target="Target",
    edge_attr='genre_ids',
    create_using=Graphtype
)

请参阅文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM