I have a multigraph object and would like to convert it to a simple graph object with weighted edges. I have looked through the networkx documentation and can\'t seem to fin
One very simple way of doing it is just to pass your multigraph as input to Graph.
import networkx as nx
G = nx.MultiGraph()
G.add_nodes_from([1,2,3])
G.add_edges_from([(1, 2), (1, 2), (1, 3), (2, 3), (2, 3)])
G2 = nx.Graph(G)
This will create an undirected graph of your multigraph where multiple edges are merged into single edges. However, if you have different attributes for the edges that get merged, I don't know if there's any way of determining which attribute is kept.