各位朋友好,今天我讲述如何用Rdkit构建化学分子的溶解度预测模型。首先我们要了解一个非常重要的包Rdkit。

Rdkit介绍

•Rdkit是开源的化学信息工具包

•采用了进行封装,提供Python2/Python3的接口

•通过SWIG技术提供Java 和C# 接口

•提供了大量对化学分子2D/3D的计算操作

•生成用于机器学习的分子描述商业友好的BSD协议

•核心数据结构和算法用C++实现

•通过Boost.Python技术对RDKit符

•基于PostgreSQL搭建分子数据库

•KNIME中的化学信息计算支持(https://www.knime.com/rdkit)

RDKIT可以处理化学分子内容如下图

接下来,我们要探索如何用Rdkit构建化学分子的溶解度预测模型。

我们来看看术语‘溶解度solubility’是什么意思。

溶解度,符号S,在一定温度下,某固态物质在100g溶剂中达到饱和状态时所溶解的溶质的质量,叫做这种物质在这种溶剂中的溶解度。物质的溶解度属于物理性质。

溶解度的单位是克(或者是克/100克溶剂),而不是没有单位.

例如,在20°C的时候,100克水里溶解0.165克氢氧化钙,溶液就饱和了,氢氧化钙在20°C的溶解度就是0.165克,也可以写成0.165克/100克水。

每一种化学分子都有相应溶解度,那么我们可否根据已知化学分子溶解度来预测其它化学分子溶解度呢?

答案是可以的。我们可以用python的rdkit,sklearn包搭建分子溶解度预测模型。

建模过程中,我们需要解决一些难题。

难点1:化学分子如何转换为数字?用于机器学习计算。

难点2—如何构建机器学习模型?

欢迎给位朋友关注<python机器学习-乳腺癌细胞挖掘>,里面有详细讲述如何用Rdkit构建化学分子的溶解度预测模型,并解决上述难题。

python机器学习乳腺癌数据挖掘

教程计算逻辑如下图

教程有完整数据和调试好的python脚本

这是化学分子式和溶解度数据

这是通过python脚本,把dat数据保存到Excel文件。

部分python脚本把smiles字符串形式转换为分子式,并可视化展示截图

模型校验可视化

术语补充知识

SMILES(Simplified molecular input line entry specification),简化分子线性输入规范,是一种用ASCII字符串明确描述分子结构的规范。SMILES由Arthur Weininger和David Weininger于20世纪80年代晚期开发,并由其他人,尤其是日光化学信息系统有限公司(Daylight Chemical Information Systems Inc.),修改和扩展。

由于SMILES用一串字符来描述一个三维化学结构,它必然要将化学结构转化成一个生成树,此系统采用纵向优先遍历树算法。转化时,先要去掉氢,还要把环打开。表示时,被拆掉的键端的原子要用数字标记,支链写在小括号里。

SMILES字符串可以被大多数分子编辑软件导入并转换成二维图形或分子的三维模型。转换成二维图形可以使用Helson的“结构图生成算法”(Structure Diagram Generation algorithms)。


版权声明:文章来自公众号(python风控模型),未经许可,不得抄袭。遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

化学分子溶解度预测模型(python-Rdkit构建)相关推荐

  1. DGL RDKit|基于GCN与基于3D描述符的分子溶解度预测模型对比

    GCN GCN : 图卷积神经网络(Graph Convolutional Networks) 图卷积的原理 处理图形或网络的数据形式存在许多重要的实际问题,如社交网络.知识图形.蛋白质相互作用网络和 ...

  2. python模糊神经网络预测_一种基于模糊神经网络的化学分子生物毒性预测模型算法的制作方法...

    本发明属于化工 技术领域: ,具体是一种基于模糊神经网络的化学分子生物毒性预测模型算法. 背景技术: :近些年来,化学物质合成技术飞快发展,合成物质已经应用于社会的各行各业,随着工业的高度发展,全球化 ...

  3. 化学分子 降维算法umap、聚类算法hdbscan和kmeans

    参考: https://github.com/iwatobipen/chemo_info/blob/master/chemicalspace2/HDBSCAN_Chemoinfo.ipynb http ...

  4. 理解神经网络,从简单的例子开始(1)7行python代码构建神经网络

    理解神经网络,从简单的例子开始(1)7行python代码构建神经网络 前言 本文分为两个部分,第一个部分是一个简单的实例:9行Python代码搭建神经网络,这篇文章原文为:原文链接, 其中中文翻译版来 ...

  5. python 项目构建工具_python的构建工具setup.py

    一.构建工具setup.py的应用场景 在安装python的相关模块和库时,我们一般使用 "pip install 模块名" 或者 "python setup.py in ...

  6. python的构建工具setup.py

    一.构建工具setup.py的应用场景 在安装python的相关模块和库时,我们一般使用"pip install  模块名"或者"python setup.py inst ...

  7. 数学建模——灰色预测模型Python代码

    数学建模--灰色预测模型Python代码 """ Spyder Editor This is a temporary script file. ""& ...

  8. 《NLTK基础教程——用NLTK和Python库构建机器学习应用》——2.11 小结

    本节书摘来异步社区<NLTK基础教程--用NLTK和Python库构建机器学习应用>一书中的第2章,第2.11节,作者:Nitin Hardeniya,更多章节内容可以访问云栖社区&quo ...

  9. 《NLTK基础教程——用NLTK和Python库构建机器学习应用》——2.3 语句分离器

    本节书摘来异步社区<NLTK基础教程--用NLTK和Python库构建机器学习应用>一书中的第2章,第2.3节,作者:Nitin Hardeniya,更多章节内容可以访问云栖社区" ...

  10. GChemPaint-绘制化学分子布局

    Toy Posted in AppsRSSTrackback GChemPaint 是专门用来绘制 2D 的化学分子布局软件,它合用于 GNOME 桌面.经由历程它所绘制的化学分子布局可以被嵌入到其他 ...

最新文章

  1. NIO核心之Channel,Buffer和Selector简介
  2. wxWidgets:TextCtrl示例
  3. 孔子、老子、墨子,春秋时期的三位人杰,谁更厉害?
  4. ubuntu下面codelite运行代码一闪而过的问题、codelite的代码排版快捷键、去掉xfce4的Ctrl+F5
  5. 为什么说Java 程序员必须掌握 Spring Boot?
  6. 长春学校计算机科学技术学院,长春大学计算机科学技术学院
  7. i5功耗最低的cpu_近年最大飞跃 Intel第11代低功耗酷睿处理器官宣:集显2倍、AI乘4...
  8. 360云盘直链解析PHP,360云盘分析直链解析
  9. [WCF权限控制]WCF的三种授权模式
  10. IMU预积分推导——公式准备
  11. 全面了解Nginx主要应用场景
  12. github进不去_app.gitbook.com进不去,一直卡着怎么回事
  13. 【Ubuntu录屏软件】SimpleScreenRecorder的安装与使用
  14. PyQt5 与PyQt4的区别
  15. 机器视觉运动控制一体机应用|工件同心度检测
  16. SAP-MM MRP类型详解
  17. 计算机不工作时硬盘自动响,电脑硬盘不规律响的解决方法
  18. 用python编译linux内核,戴子轩/RK3399上编译linux-kernel
  19. 做成事情的3个要素:意愿、能力、资源
  20. 初识ecshop小京东(2)—— 分页功能

热门文章

  1. matlab 绘制圆光栅,火爆抖音的圆点光栅画怎么做的?
  2. (转载)位图的光栅操作及ROP码解析
  3. jeecms导入myeclipse时web-inf下html出错,jeecms myeclipse
  4. PHP利用QQ邮箱发送邮件
  5. 【C++】「一本通 1.1 练习 4」家庭作业
  6. 美国佐治亚理工学院计算机博士,大神offer | 恭喜G同学全奖录取佐治亚理工学院-数学博士!...
  7. 斯蒂文斯理工学院计算机科学硕士,2020年斯蒂文斯理工学院排名TFE Times美国最佳计算机科学硕士专业排名第80...
  8. html - 空格符号 - 字符实体 - 预留字
  9. Java带宽限速器、Springboot限速器
  10. 网页yy语音(歪歪语音) 网页版