chemprep.descriptors

 1from rdkit import Chem
 2from rdkit.Chem import Descriptors
 3
 4def get_all_descriptors(smiles: str):
 5    """
 6    Calculates all available descriptors for a given SMILES string.
 7
 8    Args:
 9        smiles: The SMILES string of the molecule.
10
11    Returns:
12        A dictionary of all available descriptors.
13    """
14    mol = Chem.MolFromSmiles(smiles)
15    if mol is None:
16        raise ValueError("Invalid SMILES string")
17
18    descriptors = {}
19    for name, func in Descriptors.descList:
20        try:
21            descriptors[name] = func(mol)
22        except Exception as e:
23            descriptors[name] = None
24            print(f"Could not calculate descriptor {name} for {smiles}: {e}")
25
26    return descriptors
def get_all_descriptors(smiles: str):
 5def get_all_descriptors(smiles: str):
 6    """
 7    Calculates all available descriptors for a given SMILES string.
 8
 9    Args:
10        smiles: The SMILES string of the molecule.
11
12    Returns:
13        A dictionary of all available descriptors.
14    """
15    mol = Chem.MolFromSmiles(smiles)
16    if mol is None:
17        raise ValueError("Invalid SMILES string")
18
19    descriptors = {}
20    for name, func in Descriptors.descList:
21        try:
22            descriptors[name] = func(mol)
23        except Exception as e:
24            descriptors[name] = None
25            print(f"Could not calculate descriptor {name} for {smiles}: {e}")
26
27    return descriptors

Calculates all available descriptors for a given SMILES string.

Args: smiles: The SMILES string of the molecule.

Returns: A dictionary of all available descriptors.