class_docstr: Bipartite graph class
  
  A graph for which there are two types of nodes, such that
  edges can exist only between nodes of type 1 and type 2 (not within)
  fields of this class:
  V (int, > 0) the number of type 1 vertices
  W (int, > 0) the number of type 2 vertices
  E: (int) the number of edges
  edges: array of shape (self.E, 2) reprensenting pairwise neighbors
  weights, array of shape (self.E), +1/-1 for scending/descending links
class_docstr_tok: ["Bipartite","graph","class","A","graph","for","which","there","are","two","types","of","nodes",",","such","that","edges","can","exist","only","between","nodes","of","type","1","and","type","2","(","not","within",")","fields","of","this","class",":","V","(","int",",",">","0",")","the","number","of","type","1","vertices","W","(","int",",",">","0",")","the","number","of","type","2","vertices","E",":","(","int",")","the","number","of","edges","edges",":","array","of","shape","(","self.E",",","2",")","reprensenting","pairwise","neighbors","weights",",","array","of","shape","(","self.E",")",",","+1\/-1","for","scending\/descending","links"]
docstr: returns a copy of self
docstr_tok: ["returns","a","copy","of","self"]
code: def copy(self):
      """
      returns a copy of self
      """
      G = BipartiteGraph(
          self.V, self.W, self.edges.copy(), self.weights.copy()
      )
      return G
  
file_path: nipy/nipy/algorithms/graph/bipartite_graph.py
imports: import numpy
label_desc: Use image node_id 4 for calling the BipartiteGraph obj's underlying member method code with example usage: obj.copy() and returns: G