概览
RDKit 为化学工作流提供化学信息学和机器学习软件。其核心分子数据结构和算法以 C++ 实现,并提供 Python 接口及其他语言封装。它是用于构建分子处理与分析工作流的工具包,而非单一的即用型预测模型。官方资料介绍了分子操作、数值特征生成、数据库搜索,以及与外部工作流工具的集成。
在工作流层面,RDKit 的二维和三维操作以分子数据为对象,而描述符与指纹生成则会产生可用于下游机器学习的特征。来源摘录未说明支持的分子文件格式或详细输出模式。对于基于数据库的工作流,PostgreSQL cartridge 支持子结构搜索和相似性搜索,以及描述符计算。RDKit 还为 KNIME 提供化学信息学节点,为基于工作流的分析提供另一种集成途径。
各接口的覆盖范围有所不同:README 介绍了 Python 3.x 封装、Java 和 C# 封装,以及用于重要功能的 JavaScript 和 CFFI 封装。这一表述并不能证明各接口具有相同的功能覆盖范围。Contrib 目录提供社区贡献的软件,概述将其列为标准发行版的一部分。概述还提醒,所提及的集成实现能够运行,但不一定速度最快或最完整。摘录未提供预测准确度或吞吐量结果;是否适用于特定数据集、接口或数据库工作负载,仍需评估。
主要功能
- 以 C++ 实现核心分子数据结构和算法,并使用 Boost.Python 生成 Python 3.x 封装。
- 用于化学信息学工作流的二维和三维分子操作。
- 为下游机器学习应用生成描述符和指纹。
- 支持子结构搜索、相似性搜索和描述符计算的 PostgreSQL 分子数据库 cartridge。
- 用于集成 KNIME 工作流的化学信息学节点。
- 使用 SWIG 生成的 Java 和 C# 封装,以及提供重要功能的 JavaScript 和 CFFI 封装。
使用场景
- 建议评估:从项目的分子数据生成描述符或指纹,并评估其作为下游机器学习流水线输入的实用性。
- 建议评估:使用来自化学集合的代表性查询,评估 PostgreSQL 子结构搜索和相似性搜索。
- 建议评估:使用 RDKit 化学信息学节点搭建 KNIME 工作流原型,并将其行为与项目所需的处理步骤进行比较。
- 建议评估:通过 Python 接口探索文档所述的二维或三维分子操作,再将其纳入化学分析工作流。
使用方式
- 从官方概述入手,选择使用库、PostgreSQL 搜索还是 KNIME 集成。明确项目需要的分子操作或特征输出。
- 查阅安装指南了解环境设置。README 建议 Python 用户使用 conda;应依据官方说明选择安装方式,而不要假定其与现有环境兼容。
- 阅读 Python 入门指南。在评估一小组有代表性的自有分子之前,先检查其中记录的输入约定和示例。
- 根据所选工作流,使用描述符参考或 PostgreSQL cartridge 文档。作为评估步骤,应根据项目需求检查输出和搜索行为。
- 记录所用的 RDKit 版本,并遵循引用指南。如有问题,可使用 GitHub 讨论区;如遇到可复现的问题,可使用问题跟踪器。