class_docstr: Calculate the eigenvalues of Coulomb matrices for molecules.
  
  This featurizer computes the eigenvalues of the Coulomb matrices for provided
  molecules. Coulomb matrices are described in [1]_.
  
  Examples
  --------
  >>> import deepchem as dc
  >>> featurizers = dc.feat.CoulombMatrixEig(max_atoms=23)
  >>> input_file = 'deepchem/feat/tests/data/water.sdf' # really backed by water.sdf.csv
  >>> tasks = ["atomization_energy"]
  >>> loader = dc.data.SDFLoader(tasks, featurizer=featurizers)
  >>> dataset = loader.create_dataset(input_file)
  
  References
  ----------
  .. [1] Montavon, Grégoire, et al. "Learning invariant representations of
      molecules for atomization energy prediction." Advances in neural information
      processing systems. 2012.
docstr: Initialize this featurizer.
  
  Parameters
  ----------
  max_atoms: int
      The maximum number of atoms expected for molecules this featurizer will
      process.
  remove_hydrogens: bool, optional (default False)
      If True, remove hydrogens before processing them.
  randomize: bool, optional (default False)
      If True, use method `randomize_coulomb_matrices` to randomize Coulomb matrices.
  n_samples: int, optional (default 1)
      If `randomize` is set to True, the number of random samples to draw.
  seed: int, optional (default None)
      Random seed to use.
docstr_tok: ["Initialize","this","featurizer",".","Parameters","--","--","--","--","--","max_atoms",":","int","The","maximum","number","of","atoms","expected","for","molecules","this","featurizer","will","process",".","remove_hydrogens",":","bool",",","optional","(","default","False",")","If","True",",","remove","hydrogens","before","processing","them",".","randomize",":","bool",",","optional","(","default","False",")","If","True",",","use","method","`","randomize_coulomb_matrices","`","to","randomize","Coulomb","matrices",".","n_samples",":","int",",","optional","(","default","1",")","If","`","randomize","`","is","set","to","True",",","the","number","of","random","samples","to","draw",".","seed",":","int",",","optional","(","default","None",")","Random","seed","to","use","."]
code: def __init__(
      self,
      max_atoms: int,
      remove_hydrogens: bool = False,
      randomize: bool = False,
      n_samples: int = 1,
      seed: Optional[int] = None,
  ):
      """Initialize this featurizer.
  
      Parameters
      ----------
      max_atoms: int
          The maximum number of atoms expected for molecules this featurizer will
          process.
      remove_hydrogens: bool, optional (default False)
          If True, remove hydrogens before processing them.
      randomize: bool, optional (default False)
          If True, use method `randomize_coulomb_matrices` to randomize Coulomb matrices.
      n_samples: int, optional (default 1)
          If `randomize` is set to True, the number of random samples to draw.
      seed: int, optional (default None)
          Random seed to use.
  
      """
      self.max_atoms = int(max_atoms)
      self.remove_hydrogens = remove_hydrogens
      self.randomize = randomize
      self.n_samples = n_samples
      if seed is not None:
          seed = int(seed)
      self.seed = seed
  
file_path: deepchem/deepchem/feat/molecule_featurizers/coulomb_matrices.py
imports: import numpy
  from typing import Any, List, Optional
  from deepchem.utils.typing import RDKitMol
  from deepchem.utils.data_utils import pad_array
  from deepchem.feat.base_classes import MolecularFeaturizer
label_desc: Use image node_id 1 to create a new CoulombMatrixEig object from inherited base classes: CoulombMatrix with example: obj = CoulombMatrixEig(max_atoms, remove_hydrogens, randomize, n_samples, seed)