Skip to main content

Organizing and processing tables of chemical structures.

Project description

⬢⬢⬢ schemist

GitHub Workflow Status (with branch) PyPI - Python Version PyPI Open in Spaces

Cleaning, collating, and augmenting chemical datasets.

Installation

The easy way

Install the pre-compiled version from PyPI:

pip install schemist

From source

Clone the repository, then cd into it. Then run:

pip install -e .

Command-line usage

schemist provides command-line utlities. The list of commands can be checked like so:

$ schemist --help
usage: schemist [-h] [--version] {clean,convert,featurize,collate,dedup,enumerate,react,split} ...

Tools for cleaning, collating, and augmenting chemical datasets.

options:
  -h, --help            show this help message and exit
  --version, -v         show program's version number and exit

Sub-commands:
  {clean,convert,featurize,collate,dedup,enumerate,react,split}
                        Use these commands to specify the tool you want to use.
    clean               Clean and normalize SMILES column of a table.
    convert             Convert between string representations of chemical structures.
    featurize           Convert between string representations of chemical structures.
    collate             Collect disparate tables or SDF files of libraries into a single table.
    dedup               Deduplicate chemical structures and retain references.
    enumerate           Enumerate bio-chemical structures within length and sequence constraints.
    react               React compounds in silico in indicated columns using a named reaction.
    split               Split table based on chosen algorithm, optionally taking account of chemical structure during splits.

Each command is designed to work on large data files in a streaming fashion, so that the entire file is not held in memory at once. One caveat is that the scaffold-based splits are very slow with tables of millions of rows.

All commands (except collate) take from the input table a named column with a SMILES, SELFIES, amino-acid sequence, HELM, or InChI representation of compounds.

The tools complete specific tasks which can be easily composed into analysis pipelines, because the TSV table output goes to stdout by default so they can be piped from one tool to another.

To get help for a specific command, do

schemist <command> --help

For the Python API, see below.

Python API

schemist can be imported into Python to help make custom analyses.

>>> import schemist as sch

Documentation

Full API documentation is at ReadTheDocs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

schemist-0.0.4.post1.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

schemist-0.0.4.post1-py3-none-any.whl (30.0 kB view details)

Uploaded Python 3

File details

Details for the file schemist-0.0.4.post1.tar.gz.

File metadata

  • Download URL: schemist-0.0.4.post1.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for schemist-0.0.4.post1.tar.gz
Algorithm Hash digest
SHA256 facfbff121cdb860a7e84aad940f74c2649198cddf1e0881f56416c1d3a567ae
MD5 f86794babb4e096baf7eb42fe38f4213
BLAKE2b-256 2bd471dc63e24d1993564148245a28480a096213a92eb9ce2369b7fd5a9d2637

See more details on using hashes here.

File details

Details for the file schemist-0.0.4.post1-py3-none-any.whl.

File metadata

  • Download URL: schemist-0.0.4.post1-py3-none-any.whl
  • Upload date:
  • Size: 30.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for schemist-0.0.4.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 a3c8f2fa17866f0d4e5a86606b8c29b93ab5274bb198b0885aa66ba7abeacb15
MD5 1a3fb3631d6a983eb2201eaf01c5e9e7
BLAKE2b-256 ad8ddb92792cd4967a77efa76fe7d0bf697f66c20b957e522b092b739104eaed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page