问题标签 [rdkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
346 浏览

linux - 无法在 Ubuntu 16.04.6 LTS 上安装 RDKit

我正在尝试在 Ubuntu 16.04.6 LTS 虚拟机上安装 RDKit。

阅读安装指南,我使用了以下命令:

但我收到了消息

检查CMakeError.log文件,我看到:

我应该怎么做才能在 python3 上正确安装 RDKit?我不在此 VM 上使用 conda。

0 投票
0 回答
203 浏览

python - 访问使用 Brew 安装的 Python 模块

我正在尝试在 python 中访问“rdkit”模块,但我的 python 安装似乎没有找到该模块。我按照这里的建议使用 brew 安装了它。我包括了我用来重现问题的命令。

只是将“/usr/local/Cellar”添加到 python 路径中是一个简单的修复吗?Symlinc 站点包到地窖?坦率地说,我在更新我的 python 时并没有理解 pip 和 brew 之间的区别,所以我的第一个想法是 python 路径不正确。任何建议都非常感谢。

详细信息:OS Catalina:10.15.3

0 投票
2 回答
682 浏览

rdkit - 从摩根指纹、RDKit 中获取结构

我制作了一个模型来根据分子的摩根指纹预测分子的溶解度,现在我发现了该模型很难预测的特定指纹位。我想看看指纹的每一位与分子结构的相关性,感谢用户rapelpy,我找到了DrawMorganBits,但在这里我需要分子的mol(或Smiles),我只有一个非-特异性分子。

是否可以从指纹中获取 mol 或 smiles 代码,或者我可以通过其他方式仅用指纹绘制结构吗?

提前致谢。

0 投票
1 回答
340 浏览

python-3.x - Rdkit:MaeMolSupplier NameError

我希望能够以“.mae”格式提取有关分子的详细信息。我导入了 rdkit.Chem.rdmolfiles 函数,它似乎适用于 MolFromSmiles,但不适用于 2019 文档中建议的 MaeMolSupplier。相反,我得到一个 NameError。任何调用此函数的帮助/帮助将不胜感激。

与 MolFromSmiles 一起工作正常

现在显示错误

0 投票
0 回答
46 浏览

python - 线程/多处理 - 匹配搜索具有 600k 个术语的 60gb 文件

我有一个 python 脚本,在 1 个 CPU 上需要大约 93 天才能完成,或者在 64 个 CPU 上需要 1.5 天。

我有一个大文件(FOO.sdf),想从 FOO.sdf 中提取与模式匹配的“条目”。“条目”是由“$$$$”分隔的约 150 行的块。所需的输出是约 150 行的 600K 块。我现在拥有的这个脚本如下所示。有没有办法使用多处理或线程来跨多个内核/cpus/线程分配这个任务?我可以访问具有 64 个内核的服务器。

0 投票
0 回答
362 浏览

django - Conda 依赖包(rdkit)将无法正确安装以在 Web 服务器中使用(importError:DLL 加载失败)。有其他安装方法吗?

更新 1:PIL 和 RDKIT 产生导入错误,因为 .dll 文件没有放在 /venv//Lib/site-packages

我从环境中删除了这两个包,并从我的项目中注释掉了它们的代码。

接下来我更新了基础基础环境:

然后我升级了 pip 和 setuptools 并重新安装了枕头:

我现在可以将我的 PIL 内容添加回项目,它可以在生产服务器上正常工作,而无需安装 rdkit。

RDKIT 仅作为 conda install 提供,它仍然无法正确安装并在过程中破坏 PIL(rdkit 取决于枕头)。我已经从 rdkit 和 conda-forge 频道重新安装了。都不工作。

解决此问题的正确方法是什么?我觉得移动 .dll 文件是有风险的,不是一个好的解决方案。

更新 0:RDKIT 不会加载到任何服务器中

我创建了一个基本的 django 项目,类似于您在教程中找到的没有静态文件的项目。该项目已成功发布到 Apache 服务器,在原始帖子和 Windows 10 IIS 中描述如下。接下来修改 models.py 以导入 rdkit,两台服务器都给出了导入错误,并且站点不会显示。

原帖:

RDKIT 是唯一没有加载到我们的生产服务器中的包。

我们成功设置了一个 Wampserver 来运行 Apache 并托管我们的 Django 项目。. .但是必须注释掉与rdkit相关的所有代码才能工作。这抑制了许多必需的功能。

在 Django 的测试服务器中使用 rdkit 没有问题。

主要 wsgi 错误:

ImportError: DLL load failed: 找不到指定的模块。\r, referer: http://localhost/APP/

相关包和版本详情:

视窗 10

姜戈 2.2

蟒蛇 3.7

康达 4.8.2

rdkit 2019.09.3 conda-forge

Wampserver 3.2

阿帕奇 2.4.41

模组-wsgi 4.7.1

PostgreSQL 10

本博客中的方法描述了我们如何设置生产服务器。通过一个小的改动,我们没有改变 httpd_vhosts.conf 文件,只设置了标准的 localhost。

通过尝试将 rdkit(或其方法之一)导入到在所描述的环境中托管 Web 应用程序所需的任何文件中,可以重现该错误。

我们在 rdkit sourceforge 上找到了这个 2016 线程,听起来其他人在 Linux 系统上遇到了类似的问题。这是我们第一次设置服务器,我们还没有成功地将推荐的修复从 linux 转换为 windows。没有后续行动知道该建议是否被尝试过,更不用说成功了。

这些 2012 年的幻灯片让我们相信有人试图克服 linux 中的类似问题(幻灯片 9)

需要如何更改包才能将其加载到网络服务器中?

谢谢,我们非常感谢您的时间和帮助。

0 投票
1 回答
498 浏览

python - RDKit 的功能 MolFromInchi 不起作用

我目前正在开发一个 Django 项目,该项目需要获取 InChI 字符串并将其转换为分子的功能,但我正在使用的包似乎与其功能有问题MolFromInchi。每当我尝试使用这个函数时,python 往往会生成这个回溯:

前任。

这个错误似乎来自rdkit包的源代码,但我想知道是否有什么我可以做的来规避或缓解这个问题,同时仍然能够将功能合并MolFromInchi到我的项目中。

注意:按照RDKit 文档上发布的如何使用 Conda 安装 RDKit 的说明后,我能够重现此错误,并且此问题与 RDKit 的最新版本(2020.03.1)有关。

0 投票
1 回答
140 浏览

python - 如何在 Python 中使用 rdkit 确定任何分子的链烷烃 CH3、CH2 和 CH 基团的数量?

我正在尝试使用rdkitPython 中的包确定任何分子中的链烷烃基团的数量。最初我开始确定石蜡 CH3 基团,我必须将其扩展到石蜡 CH2 和石蜡 CH 基团。

MWE中,我试图通过匹配的子结构来确定这一点,但它不能按预期工作。我也尝试为此搜索Fragments功能,但它不可用。

如何确定rdkitPython 中任何分子的链烷烃 CH3、CH2 和 CH 基团的数量?

MWE

问题示例

对于下面给出的分子(2,2,4,5,5-五甲基庚烷):

在此处输入图像描述

代码应该给我以下输出:

  • 不。CH3 组数:7
  • 不。CH2 组数:2
  • 不。CH 组数:1
0 投票
1 回答
539 浏览

python-3.x - 控制哪个python版本`sudo apt-get install`安装包

我的 Ubuntu 18.04 系统上有 Python2.7、Python3.6 和 Python3.7。我想rdkit在 Python3.6 中使用apt-get install.

执行此操作的命令是:

sudo apt-get install python-rdkit librdkit1 rdkit-data

  1. 我怎么知道这是安装在哪个 python 版本中?(没有打开我所有的蟒蛇并检查)

  2. 如何控制安装在哪个版本中?

对于似乎无法通过pip.

0 投票
1 回答
75 浏览

python-3.x - 如果它不属于训练数据集,我该如何设置错误消息?

我已经成功实施了推荐引擎,但是如果我将任何不相关的值仍然给出输出,则必须显示“您输入了错误的值”

这是输出 正确的微笑输出

如果我输入了错误的微笑或任何不属于训练数据集的内容,那么必须给它一个消息,请输入正确的微笑。

错误的输出

我输入了任何随机文本,所以如果我输入错误的微笑,结果一定是

结果:“请输入正确的微笑”

我正在输入我的代码,我尝试如果其他但不工作。

请帮助我正确的逻辑这里目标变量是微笑和反应物变量是建议。