class_docstr: A plain python object modeling a single graph with various
  (optional) attributes:
  
  Args:
      x (Tensor, optional): Node feature matrix with shape :obj:`[num_nodes,
          num_node_features]`. (default: :obj:`None`)
      edge_index (LongTensor, optional): Graph connectivity in COO format
          with shape :obj:`[2, num_edges]`. (default: :obj:`None`)
      edge_attr (Tensor, optional): Edge feature matrix with shape
          :obj:`[num_edges, num_edge_features]`. (default: :obj:`None`)
      y (Tensor, optional): Graph or node targets with arbitrary shape.
          (default: :obj:`None`)
      pos (Tensor, optional): Node position matrix with shape
          :obj:`[num_nodes, num_dimensions]`. (default: :obj:`None`)
  
  The data object is not restricted to these attributes and can be extented
  by any other additional data.
code: def __init__(
      self, x=None, edge_index=None, edge_attr=None, y=None, pos=None
  ):
      self.x = x
      self.edge_index = edge_index
      self.edge_attr = edge_attr
      self.y = y
      self.pos = pos
  
imports: import re
  import torch
label_desc: Use image node_id 1 to create a new Data object from inherited base classes: object with example: obj = Data(x, edge_index, edge_attr, y, pos)