medchem.structural
¶
medchem.structural.CommonAlertsFilters
¶
Filtering class for building a library based on a list of structural alerts
To list the available alerts, use the list_default_available_alerts
method.
The output of the filter are explained below:
- status: one of ["exclude", "flag", "annotations", "ok"]
(ordered by
quality).
Generally, you can keep anything without the "exclude" label, as long as you also apply
a maximum severity score for compounds that collects too many flags.
- reasons: list of reasons why the compound was flagged.
- pass_filter: whether the compound passed the filter or not.
- details: optional additional details of the evaluation, including matching patterns
if keep_details
is True.
__call__(mols, n_jobs=-1, progress=False, progress_leave=False, scheduler='auto', keep_details=False)
¶
Run alert evaluation on this list of molecule and return the full dataframe
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mols |
Sequence[Union[str, Mol]]
|
list of input molecule object. |
required |
n_jobs |
Optional[int]
|
number of jobs to run in parallel. |
-1
|
progress |
bool
|
whether to show progress or not. |
False
|
progress_leave |
bool
|
whether to leave the progress bar or not. |
False
|
scheduler |
str
|
which scheduler to use. If "auto", will use "processes" if
|
'auto'
|
keep_details |
bool
|
whether to keep the details of the evaluation or not. |
False
|
__init__(alerts_set=None, alerts_db_path=None)
¶
Filtering molecules based on chemical alerts
Parameters:
Name | Type | Description | Default |
---|---|---|---|
alerts_set |
Optional[Union[str, List[str]]]
|
Filter set to use. Default is BMS+Dundee+Glaxo. |
None
|
alerts_db_path |
Optional[Union[PathLike, str]]
|
Alerts file to use. Default is internal. |
None
|
list_default_available_alerts()
cached
staticmethod
¶
Return a list of unique alert set names
medchem.structural.NIBRFilters
¶
Filtering class for building a screening deck following the novartis filtering process published in https://dx.doi.org/10.1021/acs.jmedchem.0c01332.
The output of the filter are explained below:
- status: one of ["exclude", "flag", "annotations", "ok"]
(ordered by
quality).
Generally, you can keep anything without the "exclude" label, as long as you also apply
a maximum severity score for compounds that collects too many flags.
- n_covalent_motif: number of potentially covalent motifs contained in the compound
- severity: how severe are the issues with the molecules:
- 0
: compound has no flags, might have annotations;
- 1-9
: number of flags the compound raises;
- >= 10
: default exclusion criterion used in the paper
- special_mol: whether the compound/parts of the compound belongs to a special class
of molecules
(e.g peptides, glycosides, fatty acid). In that case, you should review the rejection reasons.
- pass_filter: whether the compound passed the filter or not.
- details: optional additional details of the evaluation, including matching patterns
if keep_details
is True.
__call__(mols, n_jobs=-1, progress=False, progress_leave=False, scheduler='threads', keep_details=False)
¶
Run alert evaluation on this list of molecule and return the full dataframe
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mols |
Sequence[Union[str, Mol]]
|
list of input molecule object. |
required |
n_jobs |
Optional[int]
|
number of jobs to run in parallel. |
-1
|
progress |
bool
|
whether to show progress or not. |
False
|
progress_leave |
bool
|
whether to leave the progress bar or not. |
False
|
scheduler |
str
|
which scheduler to use. The |
'threads'
|
keep_details |
bool
|
whether to keep the details of the evaluation or not. |
False
|
medchem.structural.lilly_demerits.LillyDemeritsFilters
¶
Lilly MedChem Rules published in:
Description
This is a set of 275 rules, developed over an 18-year period, used to identify compounds that may interfere with biological assays, allowing their removal from screening sets. Reasons for rejection include reactivity (e.g., acyl halides), interference with assay measurements (fluorescence, absorbance, quenching), activities that damage proteins (oxidizers, detergents), instability (e.g., latent aldehydes), and lack of druggability (e.g., compounds lacking both oxygen and nitrogen).
__init__(mc_first_pass_options=None, iwd_options=None, stop_after_step=3, **run_options)
¶
Constructor for the Lilly MedChem Rules
Parameters:
Name | Type | Description | Default |
---|---|---|---|
mc_first_pass_options |
Optional[str]
|
Initial options to pass to mc_first_pass |
None
|
iwd_options |
Optional[str]
|
Initial options to pass to iwdemerit |
None
|
stop_after_step |
int
|
Where to stop in the pipeline. Don't change this if you don't know. |
3
|
run_options |
Any
|
Additional option to run the pipeline |
{}
|