class_docstr: Basic weighted, directed graph class
  
  Member variables:
  
  * V (int): the number of vertices
  * E (int): the number of edges
  
  Methods
  
  * vertices (list, type=int, shape=(V,)): vertices id
  * edges (list, type=int, shape=(E,2)): edges as vertices id tuples
  * weights (list, type=int, shape=(E,)): weights / lengths
    of the graph's edges
class_docstr_tok: ["Basic","weighted",",","directed","graph","class","Member","variables",":","*","V","(","int",")",":","the","number","of","vertices","*","E","(","int",")",":","the","number","of","edges","Methods","*","vertices","(","list",",","type=int",",","shape=","(","V",",",")",")",":","vertices","id","*","edges","(","list",",","type=int",",","shape=","(","E,2",")",")",":","edges","as","vertices","id","tuples","*","weights","(","list",",","type=int",",","shape=","(","E",",",")",")",":","weights","\/","lengths","of","the","graph","'s","edges"]
docstr: Symmeterize self, modify edges and weights so that
  self.adjacency becomes the symmetric part of the current
  self.adjacency.
docstr_tok: ["Symmeterize","self",",","modify","edges","and","weights","so","that","self.adjacency","becomes","the","symmetric","part","of","the","current","self.adjacency","."]
code: def symmeterize(self):
      """Symmeterize self, modify edges and weights so that
      self.adjacency becomes the symmetric part of the current
      self.adjacency.
      """
      A = self.to_coo_matrix()
      symg = wgraph_from_adjacency((A + A.T) / 2)
      self.E = symg.E
      self.edges = symg.edges
      self.weights = symg.weights
      return self
  
imports: import numpy
  from scipy.sparse import coo_matrix
label_desc: Use image node_id 12 for calling the WeightedGraph obj's underlying member method code with example usage: obj.symmeterize() and returns: self