read_edgelist#
- read_edgelist(path, comments='#', delimiter=None, create_using=None, nodetype=None, data=True, edgetype=None, encoding='utf-8')[source]#
从边列表中读取二分图。
- Parameters:
- path文件或字符串
要读取的文件或文件名。如果提供的是文件,则必须以’rb’模式打开。 以.gz或.bz2结尾的文件名将被解压缩。
- comments字符串, 可选
用于指示注释开始的字符。
- delimiter字符串, 可选
用于分隔值的字符串。默认是空白字符。
- create_using图容器, 可选
使用指定的容器构建图。默认是networkx.Graph,一个无向图。
- nodetypeint, float, str, Python类型, 可选
将节点数据从字符串转换为指定类型
- databool或(标签,类型)元组列表
指定边数据字典键名和类型的元组
- edgetypeint, float, str, Python类型, 可选(已废弃)
将边数据从字符串转换为指定类型并作为’weight’使用
- encoding: 字符串, 可选
指定读取文件时使用的编码。
- Returns:
- G图
一个networkx图或其他由create_using指定的类型
See also
Notes
由于节点必须是可哈希的,nodetype函数必须返回可哈希的类型(例如int、float、str、frozenset或它们的元组等)。
Examples
>>> from networkx.algorithms import bipartite >>> G = nx.path_graph(4) >>> G.add_nodes_from([0, 2], bipartite=0) >>> G.add_nodes_from([1, 3], bipartite=1) >>> bipartite.write_edgelist(G, "test.edgelist") >>> G = bipartite.read_edgelist("test.edgelist")
>>> fh = open("test.edgelist", "rb") >>> G = bipartite.read_edgelist(fh) >>> fh.close()
>>> G = bipartite.read_edgelist("test.edgelist", nodetype=int)
包含数据的边列表:
>>> textline = "1 2 3" >>> fh = open("test.edgelist", "w") >>> d = fh.write(textline) >>> fh.close() >>> G = bipartite.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()。