当前位置: 首页 > news >正文

IUPAC和SMILES的相互转换

这种方法只能解决非常简单的转换,更难的SMILES之间应该是无法直接转换,我可能很多人都使用神经网络解决 ,暂时还没仔细看,后面再仔细看吧...

简单的转换: 

import urllib.error
import urllib.parse
import urllib.requestSMILES_URL_TEMPLATE = 'http://cactus.nci.nih.gov/chemical/structure/{}/smiles'
IUPAC_URL_TEMPLATE = 'http://cactus.nci.nih.gov/chemical/structure/{}/iupac_name'def retrieve(url):with urllib.request.urlopen(url) as f:return f.read()def iupac2smiles(iupac):quoted_iupac = urllib.parse.quote(iupac)smiles_url = SMILES_URL_TEMPLATE.format(quoted_iupac)return retrieve(smiles_url).decode('utf-8')def smiles2iupac(smiles):quoted_smiles = urllib.parse.quote(smiles)iupac_url = IUPAC_URL_TEMPLATE.format(quoted_smiles)return retrieve(iupac_url).decode('utf-8')convert = None
src = None
dst = None
# iupac2smiles/smiles2iupac
change_direction = 'smiles2iupac'
if change_direction == 'iupac2smiles':convert = iupac2smilessrc = 'iupac'dst = 'smiles'
elif change_direction == 'smiles2iupac':convert = smiles2iupacsrc = 'smiles'dst = 'iupac'try:# 输入的化合物名称input_compound_name = "CCCC"output_compound_name = convert(input_compound_name)# 输出转换后的化合物名称print(output_compound_name)except urllib.error.HTTPError as e:print('[{src}] {original}\n: error {error}'.format(src=src, original=input_compound_name, error=e.code))

复杂的转换:

STOUT: SMILES to IUPAC names using neural machine translation:STOUT: SMILES to IUPAC names using neural machine translation | Journal of Cheminformatics | Full Text

Transformer-Based Molecular Generative Model for Antiviral Drug Design....

相关文章:

IUPAC和SMILES的相互转换

这种方法只能解决非常简单的转换,更难的SMILES之间应该是无法直接转换,我可能很多人都使用神经网络解决 ,暂时还没仔细看,后面再仔细看吧... 简单的转换: import urllib.error import urllib.parse import urllib.re…...

逻辑回归概述

逻辑回归介绍 1. 逻辑回归的应用场景 逻辑回归(Logistic Regression)是机器学习中的 一种分类模型 ,逻辑回归是一种分类算法,虽然名字中带有回归。由于算法的简单和高效,在实际中应用非常广泛 广告点击率是否为垃圾邮件是否患病信用卡账单是否会违约 逻辑回归就是解决二…...

React 框架下自己写一个braft编辑器,然后将编辑器内容展示在网页端

1.首先自己写一个编辑器 输入文字; 支持选择表情; 可添加小程序链接;可添加网页链接;并且可以编辑删除;效果如下 2.输入完毕后,点击文本输入框保存,将便携式内容回显, 渲染时…...

基于DNN深度学习网络的OFDM+QPSK信号检测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ............................................................................. Transmitt…...

学生管理系统-05封装选项卡

一、选项卡的添加 1、在router/index.js修改之前的动态添加二级路由的代码 router.addRoute("homeName",{ path:routeObj.path, component:()=>import(`@/views${routeObj.permission}.vue`), meta:{ name:routeObj.title …...

关于一些C++、Qt、Python方面的术语

杂鱼之前纯粹用python没细致理解过的术语整理一下,常看常新( 定义 (Definition): 定义是指给一个实体分配内存空间,以便在程序中使用。在C和Python中,这个实体可以是变量、函数或类。在C中,定义通常是在声…...

k8s中强制删除pv

K8s 集群内有一个已经不再使用的 PV,虽然已经删除了与其关联的 Pod 及 PVC,并对其执行了删除命令,但仍无法正常删除,一直处于 Terminating 状态: 解决办法: 1. 获取pv信息 kubectl get pv 2. 解除pv锁定 …...

60寸透明屏的透明度怎么样?

60寸透明屏是一种新型的显示屏技术,它具有透明度高、色彩鲜艳、清晰度高等特点,可以广泛应用于商业展示、户外广告、智能家居等领域。 首先,60寸透明屏的透明度高。 透明屏采用了特殊的材料和技术,使得屏幕在显示内容的同时&…...

Python:使用openpyxl读取Excel文件转为json数据

文档 https://openpyxl.readthedocs.io/en/stable/https://pypi.org/project/openpyxl/ 安装 pip install openpyxl环境 $ python --version Python 3.7.0读取文件示例:将Excel文件读取为json数据 有如下一个文件 data.xlsx 实现代码 # -*- coding: utf-8 -…...

在Microsoft Excel中如何快速合并表格

在 Excel 中分析数据时,在一个工作表中收集所有必要信息的频率是多少?几乎从来没有!当不同的数据分散在许多工作表和工作簿中时,这是一种非常常见的情况。幸运的是,有几种不同的方法可以将多个表中的数据组合成一个表&…...

【RS】基于规则的面向对象分类

ENVI使用最多的工具就是分类,这也是很多卫星影像的用途。在ENVI中有很多分类工具,如最基础的监督分类(最大似然法、最小距离、支持向量机、随机森林)、非监督分类(K-means、IsoData),还有面向对…...

SWF格式视频怎么转换成AVI格式?简单的转换方法分享

当你想要在不同的设备上播放视频时,将SWF格式视频转换成AVI格式是非常有用的。因为SWF格式通常只能在特定的软件或网页上播放,而AVI格式则可以在更广泛的设备上播放,包括智能手机,平板电脑和电视机等。那么我们怎么将SWF转换成AVI…...

Hive数据仓库

数据仓库概念与起源发展由来 数仓概念 数据仓库(英语:Data Warehouse,简称数仓、DW),是一个用于存储、分析、报告的数据系统。数据仓库的目的是构建面相分析的集成化数据环境,分析结果为企业提供决策支持…...

公网访问的Linux CentOS本地Web站点搭建指南

文章目录 前言1. 本地搭建web站点2. 测试局域网访问3. 公开本地web网站3.1 安装cpolar内网穿透3.2 创建http隧道,指向本地80端口3.3 配置后台服务 4. 配置固定二级子域名5. 测试使用固定二级子域名访问本地web站点 前言 在web项目中,部署的web站点需要被外部访问,则…...

ChatGPT:人机交互新境界,AI智能引领未来

一、ChatGPT:智能交流的新标杆 ChatGPT是基于GPT技术的最新版本,拥有深度学习模型的基因。它通过在大量数据上进行预训练,可以理解和生成自然语言,从而实现了与人类更加自然流畅的对话和交流。 二、ChatGPT的技术背景和工作原理 …...

微信小程序值相同的数据,一个数据setDate修改后,另一个值相同的数据也会修改

在js中一个基础类型可以直接赋值,引用类型直接赋值会指向同一个值(原理是浅拷贝和深拷贝) 解决问题代码:JSON.parse(JSON.stringify(json)) ↓ let json {0: [false, false],1: [true, false] } this.setData({timeList: JSON.…...

Spring5学习笔记 — IOC

✅作者简介:大家好,我是Cisyam,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Cisyam-Shark的博客 💞当前专栏: Spring专栏 ✨特色专栏&a…...

DevOps自动化平台开发之 Shell脚本执行的封装

基础知识 基于如下技术栈开发DevOps平台 Spring Boot Shell Ansible Git Gitlab Docker K8S Vue 1、spring boot starter的封装使用 2、Shell脚本的编写 3、Ansible 脚本的编写 4、Docker 的使用与封装设计 本篇介绍如何使用Java封装Linux命令和Shell脚本的使用 将其设计成…...

STM32CubeIDE(I2C)

目录 一、IIC轮询模式 1.1 配置 1.2 编写AHT20驱动 1.2.1 aht20.h 1.2.2 aht20.c 二、I2C中断 2.1 打开中断 2.2 分离读取流程 2.3 在主函数中重新编写读取流程 2.4 在i2c.c中重新定义stm32f1xx_hal_i2c.h中的两个函数 三、I2CDMA 3.1 配置DMA通道 3.2 代码的修改 一…...

http 请求报文响应报文的格式以及Token cookie session 区别

面试必备 http 请求报文响应报文的格式Token cookie session 区别 http 请求报文响应报文的格式 HTTP 请求报文和响应报文的格式如下&#xff1a; HTTP 请求报文格式&#xff1a; <方法> <路径> <协议版本> <请求头部字段1>: <值1> <请求头…...

手把手教你用NEWLab搭建智能温控系统(附完整代码)

手把手教你用NEWLab搭建智能温控系统&#xff08;附完整代码&#xff09; 在智能家居和工业自动化领域&#xff0c;温度控制始终是核心需求之一。无论是保持室内舒适环境&#xff0c;还是确保精密设备的稳定运行&#xff0c;一套可靠的温控系统都不可或缺。对于物联网初学者和…...

少样本学习实战指南:从数据增强到多模态融合的5个关键技巧

少样本学习实战指南&#xff1a;从数据增强到多模态融合的5个关键技巧 在工业质检和医疗影像等实际场景中&#xff0c;数据稀缺问题长期困扰着机器学习工程师。传统深度学习模型需要海量标注数据&#xff0c;而现实情况往往是每个类别仅有几个样本可用。这种少样本学习&#xf…...

通义千问1.5-1.8B-Chat-GPTQ-Int4 卷积神经网络(CNN)原理入门:模型辅助理解AI视觉基础

通义千问1.5-1.8B-Chat-GPTQ-Int4 卷积神经网络&#xff08;CNN&#xff09;原理入门&#xff1a;模型辅助理解AI视觉基础 你是不是经常看到“AI识别图片”、“自动驾驶看路”、“手机相册自动分类”这些功能&#xff0c;然后好奇它们是怎么做到的&#xff1f;其实&#xff0c…...

Flutter Spinkit贡献指南:如何为开源项目添加新动画组件

Flutter Spinkit贡献指南&#xff1a;如何为开源项目添加新动画组件 【免费下载链接】flutter_spinkit ✨ A collection of loading indicators animated with flutter. Heavily Inspired by http://tobiasahlin.com/spinkit. 项目地址: https://gitcode.com/gh_mirrors/fl/f…...

51单片机+DAC0832信号发生器实战:从硬件搭建到波形调试全记录(附避坑指南)

51单片机DAC0832信号发生器实战&#xff1a;从硬件搭建到波形调试全记录&#xff08;附避坑指南&#xff09; 在电子设计领域&#xff0c;信号发生器是工程师和爱好者不可或缺的工具。传统商用设备虽然功能强大&#xff0c;但对于学习嵌入式系统和数模转换原理而言&#xff0c;…...

internlm2-chat-1.8b长文本处理实战:法律合同分析+关键条款提取教程

internlm2-chat-1.8b长文本处理实战&#xff1a;法律合同分析关键条款提取教程 你是不是也遇到过这样的烦恼&#xff1f;拿到一份几十页的法律合同&#xff0c;密密麻麻的文字看得人头晕眼花&#xff0c;想快速找到里面的关键条款&#xff0c;比如付款方式、违约责任、保密协议…...

告别原生组件坑!微信小程序里让Canvas乖乖跟着ScrollView滚动的3种实战方案

微信小程序Canvas与ScrollView滚动冲突的深度解决方案 在开发微信小程序时&#xff0c;遇到Canvas等原生组件不跟随ScrollView滚动的问题&#xff0c;确实让不少开发者头疼。这种层级限制源于微信小程序的底层设计&#xff0c;原生组件如Canvas、Video等被渲染在WebView之上&am…...

终极指南:使用Refine和Ant Design快速构建专业列表页面

终极指南&#xff1a;使用Refine和Ant Design快速构建专业列表页面 【免费下载链接】refine 一个用于构建内部工具、管理面板、仪表盘和B2B应用程序的React框架&#xff0c;具有无与伦比的灵活性。 项目地址: https://gitcode.com/GitHub_Trending/re/refine Refine是一…...

Spark性能调优实战:如何通过预传依赖至HDFS加速任务启动(spark.yarn.jars与spark.yarn.archive配置详解)

1. 为什么需要预传依赖到HDFS&#xff1f; 每次提交Spark任务时&#xff0c;最让人头疼的就是漫长的等待时间。我曾经在一个中型集群上测试&#xff0c;一个简单的WordCount任务居然花了3分钟才真正开始执行——其中2分50秒都耗在了依赖上传阶段。这种体验就像每次开车前都要重…...

Sentinel-1A极化矩阵处理实战:用SNAP生成C2矩阵的7个关键参数解析与效果对比

Sentinel-1A极化矩阵处理实战&#xff1a;用SNAP生成C2矩阵的7个关键参数解析与效果对比 当处理Sentinel-1A极化SAR数据时&#xff0c;C2矩阵的生成质量直接影响后续地物分类、变化检测等应用的精度。许多初学者在使用SNAP的Polarimetric-Matrices算子时&#xff0c;往往直接采…...