Beta

chematic for Python

chematicのPythonパッケージは、Rust crateやWebAssembly版と同じRustコアの上に構築されています。 Jupyterノートブック、pandasのDataFrame、構造式ファイルのバッチ処理といった、普段のPython作業から始められます。 小さなスクリプトやノートブックで試し、必要になれば同じ分子操作をRustサービスやブラウザ機能にも広げられます。

インストール

pip install chematic

バージョン1.1.7がPyPIで公開されており、 分類はBeta、対応するPythonバージョンは3.9–3.13です。 動作するチュートリアルはリポジトリ内のクイックスタートノートブックにあります。

Jupyterとノートブック

典型的な流れは、構造を解析し、内容を確認し、インラインで描画することです。

import chematic

mol = chematic.from_smiles("CC(=O)OC1=CC=CC=C1C(=O)O")
mol.smiles
mol.mw
mol.svg()

Pythonパッケージではfrom_smiles、mwのような属性、描画文字列を返すsvg()を使います。本番ワークフローで特定の版に依存する前に、APIリファレンスを確認してください。

pandasとバッチ解析

DataFrameのSMILES列をスクリーニングしたり、SDFファイルのディレクトリを走査したりする場合、 chematicの記述子計算やフィンガープリント計算はサーバーやデータベースを必要としない純粋なPython関数です。ブラウザ版やRust版と 同じロジックを、バッチスクリプトとノートブックのセルの両方から呼び出せます。

Pythonでchematicから始める理由

  • ノートブック、バッチ解析、ブラウザツール、Rustサービスで同じ化学エンジンを使えます。
  • 解析、記述子、フィンガープリント、描画を、化学計算用のサーバーやデータベースなしでPythonから呼び出せます。
  • 公開wheelと検証記録を確認し、必要な操作を本番ワークフローに組み込む前に評価できます。

「RDKit互換のサブセット」とは

互換性はAPIの項目数ではなく、操作ごとに確認します。公開済みの比較記録で直接扱っているのは、 TPSA、Labute ASA、キラルMorganです。ほかの記述子や処理をRDKitの結果と置き換える前には、 使うコーパスで個別に検証してください。

Mol.descriptors()は合計194個の値を返します。この数はAPIの項目数であり、 検証済みの数ではありません。公開パッケージでの記録、ソース候補の記録、現在分かっている制限は検証ページで確認できます。

次のステップ