Community-Maintained Version of mordred
Project description
mordred-community
Community maintained version of the mordred molecular descriptor calculator which is no longer maintained.
We are accepting pull requests and looking for maintainers! Reach out on the Issues page if you are interested in helping out!
Installation
mordredcommunity
is currently available on PyPI with pip install mordredcommunity
or via the conda package manager with conda install -c conda-forge mordredcommunity
.
mordredcommunity
supports Python 3.8 and newer on all platforms.
To add support for pandas
and progress bars, use PyPI and call pip install mordredcommunity[full]
.
Usage of mordredcommunity
is the same as mordred
.
Packages using mordredcommunity
mordred-gui
(github.com/research11111/mordred-gui): Graphical user interface wrapper tomordredcommunity
Number of Descriptors
>>> from mordred import Calculator, descriptors
>>> n_all = len(Calculator(descriptors, ignore_3D=False).descriptors)
>>> n_2D = len(Calculator(descriptors, ignore_3D=True).descriptors)
>>> print("2D: {:5}\n3D: {:5}\n------------\ntotal: {:5}".format(n_2D, n_all - n_2D, n_all))
2D: 1613
3D: 213
------------
total: 1826
Examples
calculate all descriptors
$ python -m mordred example.smi
name,ECIndex,WPath,WPol,Zagreb1, (snip)
benzene,36,27,3,24.0, (snip)
chrolobenzene,45,42,5,30.0, (snip)
save to file (display progress bar)
$ python -m mordred example.smi -o example.csv
50%|███████████████████████████████████████▌ | 1/2 [00:00<00:00, 7.66it/s]
stream read (low memory, no number of molecules information)
$ python -m mordred example.smi -s -o example.csv
0it [00:00, ?it/s]
only ABCIndex
$ python -m mordred example.smi -d ABCIndex
name,ABC,ABCGG
benzene,4.242640687119286,3.9999999999999996
chlorobenzene,5.059137268047012,4.785854275382693
ABCIndex and AcidBase
$ python -m mordred example.smi -d ABCIndex -d AcidBase
name,ABC,ABCGG,nAcid,nBase
benzene,4.242640687119286,3.9999999999999996,0,0
chlorobenzene,5.059137268047012,4.785854275382693,0,0
multiple input
$ python -m mordred example.smi example2.smi -d ABCIndex
name,ABC,ABCGG
benzene,4.242640687119286,3.9999999999999996
chlorobenzene,5.059137268047012,4.785854275382693
pentane,2.8284271247461903,3.1462643699419726
show help
$ python -m mordred --help
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 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 VertexAdjacencyInformation WalkCount
Weight WienerIndex ZagrebIndex
as library
>>> from rdkit import Chem
>>> from mordred import Calculator, descriptors
# create descriptor calculator with all descriptors
>>> calc = Calculator(descriptors, ignore_3D=True)
>>> len(calc.descriptors)
1613
>>> len(Calculator(descriptors, ignore_3D=True, version="1.0.0"))
1612
# 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
Additional Examples
see examples on GitHub.
Citation
Please cite the original publication describing mordred
and this repository specifically.
Moriwaki H, Tian Y-S, Kawashita N, Takagi T (2018) Mordred: a molecular descriptor calculator. Journal of Cheminformatics 10:4 . doi: 10.1186/s13321-018-0258-y
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mordredcommunity-2.0.6.tar.gz
.
File metadata
- Download URL: mordredcommunity-2.0.6.tar.gz
- Upload date:
- Size: 130.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a697866278b606b25012e62492e9e17ace50355618edb8686090365336cda3df |
|
MD5 | e9031786be3c59135daebcf3a7bc0677 |
|
BLAKE2b-256 | 638a5abd14239ee48511de1d14f7ed3ea01b226cf5d3cb7189b125be87e83d88 |
File details
Details for the file mordredcommunity-2.0.6-py3-none-any.whl
.
File metadata
- Download URL: mordredcommunity-2.0.6-py3-none-any.whl
- Upload date:
- Size: 176.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 116b484a98d1af74025ed308d0922e43ea9b8857e596702a320ef0d4b2db6296 |
|
MD5 | d77f525f95eb33ec49fd70f07f6566e7 |
|
BLAKE2b-256 | f5e87d1dfd89c39554298939cfdd20cc76aeef6c4404ab32fec1965b0192113c |