Skip to main content

⬢⬢⬢ 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.

Metadata

Release files for schemist 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for schemist 0.0.6
File Size Uploaded Provenance Actions
schemist-0.0.6.tar.gz 29.3 kB Without provenance Details for schemist-0.0.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for schemist 0.0.6
File Interpreter ABI Platform Actions
schemist-0.0.6-py3-none-any.whl Python 3 none any Details for schemist-0.0.6-py3-none-any.whl

Total release size: 61.2 kB

Release files / schemist-0.0.6.tar.gz

Download URL schemist-0.0.6.tar.gz
Size 29.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5b3d5325806576149db1b61dc2f2c6586eaef3667b9aedaeff1e71b7d635580f
BLAKE2b-256 checksum
How to use checksums
9c82d86b6152ac07c9b851bda94c286f667c645fb10e22e51e9fe229ccde75e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / schemist-0.0.6-py3-none-any.whl

Download URL schemist-0.0.6-py3-none-any.whl
Size 31.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3afd50f78a40a82f87d344741d00b2a974a520562ce390cf3bbd7e303c5a6d90
BLAKE2b-256 checksum
How to use checksums
13623176802848f37f8b8c2861235f701a56a051df820d45f545af8a65805cca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Security for schemist 0.0.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page