class_docstr: GraphData class
  
  This data class is almost same as `torch_geometric.data.Data
  <https://pytorch-geometric.readthedocs.io/en/latest/modules/data.html#torch_geometric.data.Data>`_.
  
  Attributes
  ----------
  node_features: np.ndarray
      Node feature matrix with shape [num_nodes, num_node_features]
  edge_index: np.ndarray, dtype int
      Graph connectivity in COO format with shape [2, num_edges]
  edge_features: np.ndarray, optional (default None)
      Edge feature matrix with shape [num_edges, num_edge_features]
  node_pos_features: np.ndarray, optional (default None)
      Node position matrix with shape [num_nodes, num_dimensions].
  num_nodes: int
      The number of nodes in the graph
  num_node_features: int
      The number of features per node in the graph
  num_edges: int
      The number of edges in the graph
  num_edges_features: int, optional (default None)
      The number of features per edge in the graph
  
  Examples
  --------
  >>> import numpy as np
  >>> node_features = np.random.rand(5, 10)
  >>> edge_index = np.array([[0, 1, 2, 3, 4], [1, 2, 3, 4, 0]], dtype=np.int64)
  >>> edge_features = np.random.rand(5, 5)
  >>> global_features = np.random.random(5)
  >>> graph = GraphData(node_features, edge_index, edge_features, z=global_features)
  >>> graph
  GraphData(node_features=[5, 10], edge_index=[2, 5], edge_features=[5, 5], z=[5])
class_docstr_tok: ["GraphData","class","This","data","class","is","almost","same","as","`","torch_geometric.data.Data","<","https",":","\/\/pytorch-geometric.readthedocs.io\/en\/latest\/modules\/data.html","#","torch_geometric.data.Data",">","`","_",".","Attributes","--","--","--","--","--","node_features",":","np.ndarray","Node","feature","matrix","with","shape","[","num_nodes",",","num_node_features","]","edge_index",":","np.ndarray",",","dtype","int","Graph","connectivity","in","COO","format","with","shape","[","2",",","num_edges","]","edge_features",":","np.ndarray",",","optional","(","default","None",")","Edge","feature","matrix","with","shape","[","num_edges",",","num_edge_features","]","node_pos_features",":","np.ndarray",",","optional","(","default","None",")","Node","position","matrix","with","shape","[","num_nodes",",","num_dimensions","]",".","num_nodes",":","int","The","number","of","nodes","in","the","graph","num_node_features",":","int","The","number","of","features","per","node","in","the","graph","num_edges",":","int","The","number","of","edges","in","the","graph","num_edges_features",":","int",",","optional","(","default","None",")","The","number","of","features","per","edge","in","the","graph","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","node_features","=","np.random.rand","(","5",",","10",")",">",">",">","edge_index","=","np.array","(","[","[","0",",","1",",","2",",","3",",","4","]",",","[","1",",","2",",","3",",","4",",","0","]","]",",","dtype=np.int64",")",">",">",">","edge_features","=","np.random.rand","(","5",",","5",")",">",">",">","global_features","=","np.random.random","(","5",")",">",">",">","graph","=","GraphData","(","node_features",",","edge_index",",","edge_features",",","z=global_features",")",">",">",">","graph","GraphData","(","node_features=","[","5",",","10","]",",","edge_index=","[","2",",","5","]",",","edge_features=","[","5",",","5","]",",","z=","[","5","]",")"]
docstr: Returns a string containing the printable representation of the object
docstr_tok: ["Returns","a","string","containing","the","printable","representation","of","the","object"]
code: def __repr__(self) -> str:
      """Returns a string containing the printable representation of the object"""
      cls = self.__class__.__name__
      node_features_str = str(list(self.node_features.shape))
      edge_index_str = str(list(self.edge_index.shape))
      if self.edge_features is not None:
          edge_features_str = str(list(self.edge_features.shape))
      else:
          edge_features_str = "None"
  
      out = "%s(node_features=%s, edge_index=%s, edge_features=%s" % (
          cls,
          node_features_str,
          edge_index_str,
          edge_features_str,
      )
      # Adding shapes of kwargs
      for key, value in self.kwargs.items():
          if isinstance(value, np.ndarray):
              out += ", " + key + "=" + str(list(value.shape))
          elif isinstance(value, str):
              out += ", " + key + "=" + value
          elif isinstance(value, int) or isinstance(value, float):
              out += ", " + key + "=" + str(value)
      out += ")"
      return out
  
file_path: deepchem/deepchem/feat/graph_data.py
imports: from typing import Optional, Sequence
  import numpy
label_desc: Use image node_id 2 for calling the GraphData obj's underlying member method code with example usage: obj.__repr__() and returns: out