class_docstr: Client object for cugraph_service, which defines the API that clients can
  use to access the cugraph_service server.
class_docstr_tok: ["Client","object","for","cugraph_service",",","which","defines","the","API","that","clients","can","use","to","access","the","cugraph_service","server","."]
docstr: Return a graph ID for a subgraph of the graph referenced by graph_id
  that containing vertices and edges that match a selection.
  
  Parameters
  ----------
  create_using : string, default is None
      String describing the type of Graph object to create from the
      selected subgraph of vertices and edges. The default (None) results
      in a directed cugraph.MultiGraph object.
  
  selection : int, default is None
      A PropertySelection ID returned from one or more calls to
      select_vertices() and/or select_edges(), used for creating a Graph
      with only the selected properties. If not speciied the resulting
      Graph will have all properties. Note, this could result in a Graph
      with multiple edges, which may not be supported based on the value
      of create_using.
  
  edge_weight_property : string, default is ""
      The name of the property whose values will be used as weights on
      the returned Graph. If not specified, the returned Graph will be
      unweighted.
  
  default_edge_weight : float, default is 1.0
      The value to use when an edge property is specified but not present
      on an edge.
  
  check_multi_edges : bool (default is True)
      When True and create_using argument is given and not a MultiGraph,
      this will perform an expensive check to verify that the edges in
      the edge dataframe do not form a multigraph with duplicate edges.
  
  graph_id : int, default is defaults.graph_id
     The graph ID to extract the subgraph from. If the ID passed is not
     valid on the server, CugraphServiceError is raised.
  
  Returns
  -------
  A graph ID for a new Graph instance of the same type as create_using
  containing only the vertices and edges resulting from applying the
  selection to the set of vertex and edge property data.
  
  Examples
  --------
  >>>
docstr_tok: ["Return","a","graph","ID","for","a","subgraph","of","the","graph","referenced","by","graph_id","that","containing","vertices","and","edges","that","match","a","selection",".","Parameters","--","--","--","--","--","create_using",":","string",",","default","is","None","String","describing","the","type","of","Graph","object","to","create","from","the","selected","subgraph","of","vertices","and","edges",".","The","default","(","None",")","results","in","a","directed","cugraph.MultiGraph","object",".","selection",":","int",",","default","is","None","A","PropertySelection","ID","returned","from","one","or","more","calls","to","select_vertices","(",")","and\/or","select_edges","(",")",",","used","for","creating","a","Graph","with","only","the","selected","properties",".","If","not","speciied","the","resulting","Graph","will","have","all","properties",".","Note",",","this","could","result","in","a","Graph","with","multiple","edges",",","which","may","not","be","supported","based","on","the","value","of","create_using",".","edge_weight_property",":","string",",","default","is","``","''","The","name","of","the","property","whose","values","will","be","used","as","weights","on","the","returned","Graph",".","If","not","specified",",","the","returned","Graph","will","be","unweighted",".","default_edge_weight",":","float",",","default","is","1.0","The","value","to","use","when","an","edge","property","is","specified","but","not","present","on","an","edge",".","check_multi_edges",":","bool","(","default","is","True",")","When","True","and","create_using","argument","is","given","and","not","a","MultiGraph",",","this","will","perform","an","expensive","check","to","verify","that","the","edges","in","the","edge","dataframe","do","not","form","a","multigraph","with","duplicate","edges",".","graph_id",":","int",",","default","is","defaults.graph_id","The","graph","ID","to","extract","the","subgraph","from",".","If","the","ID","passed","is","not","valid","on","the","server",",","CugraphServiceError","is","raised",".","Returns","--","--","--","-","A","graph","ID","for","a","new","Graph","instance","of","the","same","type","as","create_using","containing","only","the","vertices","and","edges","resulting","from","applying","the","selection","to","the","set","of","vertex","and","edge","property","data",".","Examples","--","--","--","--",">",">",">"]
code: def extract_subgraph(
      self,
      create_using=None,
      selection=None,
      edge_weight_property="",
      default_edge_weight=1.0,
      check_multi_edges=True,
      renumber_graph=True,
      add_edge_data=True,
      graph_id=defaults.graph_id,
  ):
      """
      Return a graph ID for a subgraph of the graph referenced by graph_id
      that containing vertices and edges that match a selection.
  
      Parameters
      ----------
      create_using : string, default is None
          String describing the type of Graph object to create from the
          selected subgraph of vertices and edges. The default (None) results
          in a directed cugraph.MultiGraph object.
  
      selection : int, default is None
          A PropertySelection ID returned from one or more calls to
          select_vertices() and/or select_edges(), used for creating a Graph
          with only the selected properties. If not speciied the resulting
          Graph will have all properties. Note, this could result in a Graph
          with multiple edges, which may not be supported based on the value
          of create_using.
  
      edge_weight_property : string, default is ""
          The name of the property whose values will be used as weights on
          the returned Graph. If not specified, the returned Graph will be
          unweighted.
  
      default_edge_weight : float, default is 1.0
          The value to use when an edge property is specified but not present
          on an edge.
  
      check_multi_edges : bool (default is True)
          When True and create_using argument is given and not a MultiGraph,
          this will perform an expensive check to verify that the edges in
          the edge dataframe do not form a multigraph with duplicate edges.
  
      graph_id : int, default is defaults.graph_id
         The graph ID to extract the subgraph from. If the ID passed is not
         valid on the server, CugraphServiceError is raised.
  
      Returns
      -------
      A graph ID for a new Graph instance of the same type as create_using
      containing only the vertices and edges resulting from applying the
      selection to the set of vertex and edge property data.
  
      Examples
      --------
      >>>
      """
      # FIXME: finish docstring above
  
      # FIXME: convert defaults to type needed by the Thrift API. These will
      # be changing to different types.
      create_using = create_using or ""
      selection = selection or ""
  
      return self.__client.extract_subgraph(
          create_using,
          selection,
          edge_weight_property,
          default_edge_weight,
          check_multi_edges,
          renumber_graph,
          add_edge_data,
          graph_id,
      )
  
imports: from cugraph_service_client.remote_graph_utils import import_optional, MissingModule
  import numpy
  from functools import wraps
  from collections.abc import Sequence
  import pickle
  import ucp
  import asyncio
  import threading
  from cugraph_service_client import defaults
  from cugraph_service_client.remote_graph import RemoteGraph
  from cugraph_service_client import extension_return_dtype_map
  from cugraph_service_client.types import ValueWrapper, GraphVertexEdgeID, UniformNeighborSampleResult
  from cugraph_service_client.cugraph_service_thrift import create_client
label_desc: Use image node_id 23 for calling the CugraphServiceClient obj's underlying member method code with example usage: obj.extract_subgraph(create_using, selection, edge_weight_property, default_edge_weight, check_multi_edges, renumber_graph, add_edge_data, graph_id) and returns: self