rdkit.Chem.rdRGroupDecomposition module¶
TEST!!! Module containing RGroupDecomposition classes and functions.
- class rdkit.Chem.rdRGroupDecomposition.RGroupCoreAlignment(*values)¶
Bases:
IntEnum- MCS = 1¶
- NoAlignment = 0¶
- None = 0¶
- class rdkit.Chem.rdRGroupDecomposition.RGroupDecomposition(self, cores: object)¶
- class rdkit.Chem.rdRGroupDecomposition.RGroupDecomposition(self, cores: object, params: rdkit.Chem.rdRGroupDecomposition.RGroupDecompositionParameters)
Bases:
objectOverloaded function.
__init__(self, cores: object) -> None
Construct from a molecule or sequence of molecules
__init__(self, cores: object, params: rdkit.Chem.rdRGroupDecomposition.RGroupDecompositionParameters) -> None
Construct from a molecule or sequence of molecules and a parameters object
- Add(self, mol: rdkit.Chem.rdchem.Mol) int¶
- GetMatchingCoreIdx(self, mol: rdkit.Chem.rdchem.Mol, matches: object | None = None) int¶
- GetRGroupLabels(self) list¶
Return the current list of found rgroups. Note, Process() should be called first
- GetRGroupsAsColumns(self, asSmiles: bool = False) dict¶
Return the rgroups as columns (note: can be fed directly into a pandas datatable) :param - asSmiles: if True return smiles strings, otherwise return
- molecules [default: False]
- Column structure:
columns[rgroup_label] = [ mols_or_smiles ]
- GetRGroupsAsRows(self, asSmiles: bool = False) list¶
Return the rgroups as rows (note: can be fed directly into a pandas datatable) :param - asSmiles: if True return smiles strings, otherwise return
- molecules [default: False]
- Row structure:
rows[idx] = {rgroup_label: molecule_or_smiles}
- Process(self) bool¶
Process the rgroups (must be done prior to GetRGroupsAsRows/Columns and GetRGroupLabels)
- ProcessAndScore(self) tuple¶
Process the rgroups and returns the score (must be done prior to GetRGroupsAsRows/Columns and GetRGroupLabels)
- class rdkit.Chem.rdRGroupDecomposition.RGroupDecompositionParameters(self)¶
Bases:
objectRGroupDecompositionParameters controls how the RGroupDecomposition sets labelling and matches structures OPTIONS:
RGroupCoreAlignment: can be one of RGroupCoreAlignment.None_ or
- RGroupCoreAlignment.MCS
If set to MCS, cores labels are mapped to
- each other using their
Maximum common substructure overlap.
RGroupLabels: optionally set where the rgroup labels to use are
- encoded.
RGroupLabels.IsotopeLabels - labels are stored
- on isotopes
RGroupLabels.AtomMapLabels - labels are stored
- on atommaps
RGroupLabels.MDLRGroupLabels - labels are stored
- on MDL R-groups
RGroupLabels.DummyAtomLabels - labels are stored
- on dummy atoms
RGroupLabels.AtomIndexLabels - use the atom index
- as the label
RGroupLabels.RelabelDuplicateLabels - fix any
- duplicate labels
RGroupLabels.AutoDetect - auto detect the label
- [default]
Note: in all cases, any rgroups found on unlabelled atoms will
- be automatically
labelled.
RGroupLabelling: choose where the rlabels are stored on the
- decomposition
RGroupLabelling.AtomMap - store rgroups as atom
- maps (for smiles)
RGroupLabelling.Isotope - store rgroups on the
- isotope
RGroupLabelling.MDLRGroup - store rgroups as mdl
- rgroups (for molblocks)
default: AtomMap | MDLRGroup
onlyMatchAtRGroups: only allow rgroup decomposition at the
- specified rgroups
removeAllHydrogenRGroups: remove all user-defined rgroups that
- only have hydrogens
removeAllHydrogenRGroupsAndLabels: remove all user-defined
rgroups that only have hydrogens, and also remove the corresponding labels from the core
removeHydrogensPostMatch: remove all hydrogens from the output
- molecules
allowNonTerminalRGroups: allow labelled Rgroups of degree 2 or
- more
doTautomers: match all tautomers of a core against each
- input structure
doEnumeration: expand input cores into enumerated mol bundles
allowMultipleRGroupsOnUnlabelled: permit more than one rgroup to
- be attached to an unlabelled core atom
allowMultipleCoresInSameMol: permit a core to match more than
once in the same molecule if the sets of matched atoms are not equal (default=False)
Constructor, takes no arguments
- property alignment¶
(self) -> int
- property allowMultipleCoresInSameMol¶
(self) -> bool
- property allowMultipleRGroupsOnUnlabelled¶
(self) -> bool
- property allowNonTerminalRGroups¶
(self) -> bool
- property chunkSize¶
(self) -> int
- property doEnumeration¶
(self) -> bool
- property doTautomers¶
(self) -> bool
- property gaMaximumOperations¶
(self) -> int
- property gaNumberOperationsWithoutImprovement¶
(self) -> int
- property gaNumberRuns¶
(self) -> int
- property gaParallelRuns¶
(self) -> bool
- property gaPopulationSize¶
(self) -> int
- property gaRandomSeed¶
(self) -> int
- property includeTargetMolInResults¶
(self) -> bool
- property labels¶
(self) -> int
- property matchingStrategy¶
(self) -> int
- property onlyMatchAtRGroups¶
(self) -> bool
- property removeAllHydrogenRGroups¶
(self) -> bool
- property removeAllHydrogenRGroupsAndLabels¶
(self) -> bool
- property removeHydrogensPostMatch¶
(self) -> bool
- property rgroupLabelling¶
(self) -> int
- property scoreMethod¶
(self) -> int
- property substructMatchParams¶
(self) -> rdkit.Chem.rdchem.SubstructMatchParameters
- property timeout¶
(self) -> float
- class rdkit.Chem.rdRGroupDecomposition.RGroupLabelling(*values)¶
Bases:
IntEnum- AtomMap = 1¶
- Isotope = 2¶
- MDLRGroup = 4¶
- class rdkit.Chem.rdRGroupDecomposition.RGroupLabels(*values)¶
Bases:
IntEnum- AtomIndexLabels = 4¶
- AtomMapLabels = 2¶
- AutoDetect = 255¶
- DummyAtomLabels = 32¶
- IsotopeLabels = 1¶
- MDLRGroupLabels = 16¶
- RelabelDuplicateLabels = 8¶