Specific Molecular Properties

The OEFilter object table can also be used to retrieve specific molecular properties or filtering terms for which a free function does not exist. The number of molecular properties is large. In addition, some properties are more experimental than others. For these reasons free functions are not provided for everything that can be calculated. This example demonstrates how to extract a property, the number of Lipinski violations, from the OEFilter object molecular property table by writing the table to a oeosstream.

Warning

The exact number of fields the OEFilter object outputs depends on the filter file being used. The field will only be output if the filter rule is turned on. That is why this example will search the header line for the position of the “Lipinski violations” field. This key-value lookup is recommended for extracting specific fields from the filter table.

Command Line Interface

A description of the command line interface can be obtained by executing the program with the –help argument.

prompt> python specificmolprop.py --help

will generate the following output:

Simple parameter list
 filter options :
   -filtertype : filter type

 input/output options :
   -in : Input filename
   -out : Output filename

Code

Download code

specificmolprop.py

Examples

prompt> python specificmolprop.py -in mcss.smi.gz -filtertype Lead