class_docstr: This class is a featurizer for the Molecule Attention Transformer [1]_.
  The returned value is a numpy array which consists of molecular graph descriptions:
      - Node Features
      - Adjacency Matrix
      - Distance Matrix
  
  References
  ---------
  .. [1] Lukasz Maziarka et al. "Molecule Attention Transformer`<https://arxiv.org/abs/2002.08264>`"
  
  Examples
  --------
  >>> import deepchem as dc
  >>> feat = dc.feat.MATFeaturizer()
  >>> out = feat.featurize("CCC")
  
  Note
  ----
  This class requires RDKit to be installed.
class_docstr_tok: ["This","class","is","a","featurizer","for","the","Molecule","Attention","Transformer","[","1","]","_",".","The","returned","value","is","a","numpy","array","which","consists","of","molecular","graph","descriptions",":","-","Node","Features","-","Adjacency","Matrix","-","Distance","Matrix","References","--","--","--","--","-","..","[","1","]","Lukasz","Maziarka","et","al",".","``","Molecule","Attention","Transformer","`","<","https",":","\/\/arxiv.org\/abs\/2002.08264",">","`","``","Examples","--","--","--","--",">",">",">","import","deepchem","as","dc",">",">",">","feat","=","dc.feat.MATFeaturizer","(",")",">",">",">","out","=","feat.featurize","(","``","CCC","''",")","Note","--","--","This","class","requires","RDKit","to","be","installed","."]
docstr: Featurize the molecule.
  
  Parameters
  ----------
  datapoint: RDKitMol
      RDKit mol object.
  
  Returns
  -------
  MATEncoding
      A MATEncoding dataclass instance consisting of processed node_features, adjacency_matrix and distance_matrix.
docstr_tok: ["Featurize","the","molecule",".","Parameters","--","--","--","--","--","datapoint",":","RDKitMol","RDKit","mol","object",".","Returns","--","--","--","-","MATEncoding","A","MATEncoding","dataclass","instance","consisting","of","processed","node_features",",","adjacency_matrix","and","distance_matrix","."]
code: def _featurize(self, datapoint: RDKitMol, **kwargs) -> MATEncoding:
      """
      Featurize the molecule.
  
      Parameters
      ----------
      datapoint: RDKitMol
          RDKit mol object.
  
      Returns
      -------
      MATEncoding
          A MATEncoding dataclass instance consisting of processed node_features, adjacency_matrix and distance_matrix.
  
      """
      if "mol" in kwargs:
          datapoint = kwargs.get("mol")
          raise DeprecationWarning(
              'Mol is being phased out as a parameter, please pass "datapoint" instead.'
          )
      from rdkit import Chem
  
      datapoint = self.construct_mol(datapoint)
  
      node_features = self.construct_node_features_matrix(datapoint)
      adjacency_matrix = Chem.GetAdjacencyMatrix(datapoint)
      distance_matrix = Chem.GetDistanceMatrix(datapoint)
  
      (
          node_features,
          adjacency_matrix,
          distance_matrix,
      ) = self._add_dummy_node(
          node_features, adjacency_matrix, distance_matrix
      )
  
      node_features = self._pad_sequence(node_features)
      adjacency_matrix = self._pad_sequence(adjacency_matrix)
      distance_matrix = self._pad_sequence(distance_matrix)
  
      return MATEncoding(
          node_features, adjacency_matrix, distance_matrix
      )
  
file_path: deepchem/deepchem/feat/molecule_featurizers/mat_featurizer.py
imports: from deepchem.feat.base_classes import MolecularFeaturizer
  from deepchem.utils.molecule_feature_utils import one_hot_encode
  from deepchem.utils.typing import RDKitMol, RDKitAtom
  import numpy
  from typing import Tuple, Any
  from dataclasses import dataclass
label_desc: Use image node_id 8 for calling the MATFeaturizer obj's underlying member method code with example usage: obj._featurize(datapoint) and returns: MATEncoding