read_edgelist#
- read_edgelist(path, comments='#', delimiter=None, create_using=None, nodetype=None, data=True, edgetype=None, encoding='utf-8')[source]#
从边列表读取图。
- 参数:
- path文件或字符串
要读取的文件或文件名。如果提供的是文件,则必须以 'rb' 模式打开。以 .gz 或 .bz2 结尾的文件名将被解压。
- comments字符串,可选
用于指示注释开头的字符。要指定任何字符都不应被视为注释,请使用
comments=None
。- delimiter字符串,可选
用于分隔值的字符串。默认是空白字符。
- create_usingNetworkX 图构造函数,可选 (默认=nx.Graph)
要创建的图类型。如果是图实例,则在填充前会先清空。
- nodetypeint, float, str, Python 类型,可选
将节点数据从字符串转换为指定的类型
- data布尔值或 (label,type) 元组列表
指定边数据字典键名和类型的元组
- edgetypeint, float, str, Python 类型,可选 已废弃
将边数据从字符串转换为指定的类型并用作“weight”
- encoding: 字符串,可选
指定读取文件时使用的编码。
- 返回:
- G图
一个 networkx 图或由 create_using 指定的其他类型
说明
由于节点必须是可哈希的,nodetype 函数必须返回可哈希的类型(例如 int, float, str, frozenset - 或它们的元组等)
示例
>>> nx.write_edgelist(nx.path_graph(4), "test.edgelist") >>> G = nx.read_edgelist("test.edgelist")
>>> fh = open("test.edgelist", "rb") >>> G = nx.read_edgelist(fh) >>> fh.close()
>>> G = nx.read_edgelist("test.edgelist", nodetype=int) >>> G = nx.read_edgelist("test.edgelist", create_using=nx.DiGraph)
列表中包含数据的边列表
>>> textline = "1 2 3" >>> fh = open("test.edgelist", "w") >>> d = fh.write(textline) >>> fh.close() >>> G = nx.read_edgelist("test.edgelist", nodetype=int, data=(("weight", float),)) >>> list(G) [1, 2] >>> list(G.edges(data=True)) [(1, 2, {'weight': 3.0})]
有关格式化的更多示例,请参阅 parse_edgelist()。