跳转到主要内容

一个用于处理分子的Python库。基于RDKit构建。

项目描述

datamol - 简化分子处理

文档 | 主页


DOI Binder PyPI Conda PyPI - Downloads Conda PyPI - Python Version license GitHub Repo stars GitHub Repo stars Codecov

Datamol 是一个用于处理分子的 Python 库。它建立在 RDKit 之上,旨在尽可能轻量。

  • 🐍 简单的 Pythonic API
  • ⚗️ 首先使用 RDKit:所有操作都是基于 rdkit.Chem.Mol 对象。
  • ✅ 操作分子通常需要很多选项;Datamol 通过设计提供了良好的默认值。
  • 🧠 性能很重要:尽可能内置高效并行化,并带有可选的进度条。
  • 🕹️ 现代IO:使用 fsspec 提供远程路径支持,开箱即用支持读取和写入多种格式(sdf、xlsx、csv等)。

在线尝试

访问 Binder 在线尝试 Datamol。

文档

访问 https://docs.datamol.io

安装

使用 conda

mamba install -c conda-forge datamol

快速 API 导览

import datamol as dm

# Common functions
mol = dm.to_mol("O=C(C)Oc1ccccc1C(=O)O", sanitize=True)
fp = dm.to_fp(mol)
selfies = dm.to_selfies(mol)
inchi = dm.to_inchi(mol)

# Standardize and sanitize
mol = dm.to_mol("O=C(C)Oc1ccccc1C(=O)O")
mol = dm.fix_mol(mol)
mol = dm.sanitize_mol(mol)
mol = dm.standardize_mol(mol)

# Dataframe manipulation
df = dm.data.freesolv()
mols = dm.from_df(df)

# 2D viz
legends = [dm.to_smiles(mol) for mol in mols[:10]]
dm.viz.to_image(mols[:10], legends=legends)

# Generate conformers
smiles = "O=C(C)Oc1ccccc1C(=O)O"
mol = dm.to_mol(smiles)
mol_with_conformers = dm.conformers.generate(mol)

# 3D viz (using nglview)
dm.viz.conformers(mol, n_confs=10)

# Compute SASA from conformers
sasa = dm.conformers.sasa(mol_with_conformers)

# Easy IO
mols = dm.read_sdf("s3://my-awesome-data-lake/smiles.sdf", as_df=False)
dm.to_sdf(mols, "gs://data-bucket/smiles.sdf")

如何引用

如果您在研究中使用了 Datamol,请引用 Datamol:DOI

兼容性

版本兼容性是生产级软件堆栈的一个基本话题。我们对记录 datamolpythonrdkit 之间的兼容性非常谨慎。

以下是 Python 和 RDKit 的相关版本,Datamol 在其整个生命周期中对其进行了测试。 这并不意味着其他组合不工作,只是这些组合未经测试。

datamol python rdkit
0.12.x [3.10, 3.11] [2023.03, 2023.09]
0.11.x [3.9, 3.10, 3.11] [2022.09, 2023.03]
0.10.x [3.9, 3.10, 3.11] [2022.03, 2022.09]
0.9.x [3.9, 3.10, 3.11] [2022.03, 2022.09]
0.8.x [3.8, 3.9, 3.10] [2021.09, 2022.03, 2022.09]
0.7.x [3.8, 3.9] [2021.09, 2022.03]
0.6.x [3.8, 3.9] [2021.09]
0.5.x [3.8, 3.9] [2021.03, 2021.09]
0.4.x [3.8, 3.9] [2020.09, 2021.03]
0.3.x [3.8, 3.9] [2020.09, 2021.03]

CI 状态

CI 运行测试并执行以下组合的代码质量检查

  • 三大平台:Windows、OSX 和 Linux。
  • 最新的两个 Python 版本。
  • 最新的两个 RDKit 版本。
main
库构建与测试 test
代码健康检查(代码检查和类型分析) code-check
文档构建 doc

许可证

在 Apache-2.0 许可证下。请参阅 LICENSE

项目详情


发行历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

datamol-0.12.5.tar.gz (3.9 MB 查看哈希值)

上传时间

构建分发

datamol-0.12.5-py3-none-any.whl (495.4 kB 查看哈希值)

上传时间 Python 3