Warning
This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.
parse_edgelist¶
-
parse_edgelist
(lines, comments='#', delimiter=None, create_using=None, nodetype=None, data=True)[source]¶ Parse lines of an edge list representation of a graph.
Parameters: - lines (list or iterator of strings) – Input data in edgelist format
- comments (string, optional) – Marker for comment lines
- delimiter (string, optional) – Separator for node labels
- create_using (NetworkX graph container, optional) – Use given NetworkX graph for holding nodes or edges.
- nodetype (Python type, optional) – Convert nodes to this type.
- data (bool or list of (label,type) tuples) – If False generate no edge data or if True use a dictionary representation of edge data or a list tuples specifying dictionary key names and types for edge data.
Returns: G – The graph corresponding to lines
Return type: NetworkX Graph
Examples
Edgelist with no data:
>>> lines = ["1 2", ... "2 3", ... "3 4"] >>> G = nx.parse_edgelist(lines, nodetype = int) >>> G.nodes() [1, 2, 3, 4] >>> G.edges() [(1, 2), (2, 3), (3, 4)]
Edgelist with data in Python dictionary representation:
>>> lines = ["1 2 {'weight':3}", ... "2 3 {'weight':27}", ... "3 4 {'weight':3.0}"] >>> G = nx.parse_edgelist(lines, nodetype = int) >>> G.nodes() [1, 2, 3, 4] >>> G.edges(data = True) [(1, 2, {'weight': 3}), (2, 3, {'weight': 27}), (3, 4, {'weight': 3.0})]
Edgelist with data in a list:
>>> lines = ["1 2 3", ... "2 3 27", ... "3 4 3.0"] >>> G = nx.parse_edgelist(lines, nodetype = int, data=(('weight',float),)) >>> G.nodes() [1, 2, 3, 4] >>> G.edges(data = True) [(1, 2, {'weight': 3.0}), (2, 3, {'weight': 27.0}), (3, 4, {'weight': 3.0})]
See also