Introduction

mordred

molecular descriptor calculator.

https://travis-ci.org/mordred-descriptor/mordred.svg?branch=master https://ci.appveyor.com/api/projects/status/iwk6268d27jusvni/branch/master?svg=true https://coveralls.io/repos/github/mordred-descriptor/mordred/badge.svg?branch=master Code Climate https://anaconda.org/mordred-descriptor/mordred/badges/version.svg https://zenodo.org/badge/DOI/10.5281/zenodo.61242.svg

Installation

pip

  1. install rdkit python package

  2. install mordred

    $ pip install git+https://github.com/mordred-descriptor/mordred
    

examples

as command

usage: python -m mordred [-h] [--version] [-t {auto,sdf,mol,smi}] [-o OUTPUT]
                         [-p PROCESSES] [-q] [-s] [-d DESC] [-3] [-v]
                         INPUT [INPUT ...]

positional arguments:
  INPUT

optional arguments:
  -h, --help            show this help message and exit
  --version             input molecular file
  -t {auto,sdf,mol,smi}, --type {auto,sdf,mol,smi}
                        input filetype (default: auto)
  -o OUTPUT, --output OUTPUT
                        output file path (default: stdout)
  -p PROCESSES, --processes PROCESSES
                        number of processes (default: number of logical
                        processors)
  -q, --quiet           hide progress bar
  -s, --stream          stream read
  -d DESC, --descriptor DESC
                        descriptors to calculate (default: all)
  -3, --3D              use 3D descriptors (require sdf or mol file)
  -v, --verbosity       verbosity

descriptors: ABCIndex AcidBase AdjacencyMatrix Aromatic AtomCount
Autocorrelation Autocorrelation3D BalabanJ BaryszMatrix BCUT BertzCT BondCount
CarbonTypes Chi Constitutional CPSA DetourMatrix DistanceMatrix
EccentricConnectivityIndex EState ExtendedTopochemicalAtom FragmentComplexity
Framework GeometricalIndex GravitationalIndex HydrogenBond InformationContent
KappaShapeIndex Lipinski McGowanVolume MoeType MolecularDistanceEdge
MolecularId MomentOfInertia MoRSE PathCount Polarizability RingCount
RotatableBond SLogP TopologicalCharge TopologicalIndex TopoPSA VdwVolumeABC

as library

>>> from rdkit import Chem
>>> from mordred import Calculator, descriptors

# create descriptor calculator with all descriptors
>>> calc = Calculator(descriptors, exclude3D=True)

>>> len(calc.descriptors)
1824

# calculate single molecule
>>> mol = Chem.MolFromSmiles('c1ccccc1')
>>> calc(mol)[:3]
[4.242640687119286, 3.9999999999999996, 0]

# calculate multiple molecule
>>> mols = [Chem.MolFromSmiles(smi) for smi in ['c1ccccc1Cl', 'c1ccccc1O', 'c1ccccc1N']]

# as pandas
>>> df = calc.pandas(mols)
>>> df['SLogP']
0    2.3400
1    1.3922
2    1.2688
Name: SLogP, dtype: float64

Documentation