续:关于PubChempy的使用

续:关于PubChempy的使用

继上篇整理之后,又上网查询了pubchempy中“get_compounds”与“get_properties”的用法并进行了整理,以供记录与参考。

查询单个物质的信息

import pubchempy as pcp
c = pcp.Compound.from_cid(4396)
# #分子式
print(c.molecular_formula)
# #分子质量
print(c.molecular_weight)
# #smiles
print(c.isomeric_smiles)
# #IUPAC名
print(c.iupac_name)

通过化合物的种类来检索指定化合物及信息

import pubchempy as pcp
c = pcp.Compound.from_cid(4396)
results = pcp.get_compounds('alanine', 'name')
for i in results:
    print('CID: {}\tName: {}'.format(i.cid, i.iupac_name))
# get_compounds的默认设定是2D化合物结构信息,所以如果要取得3D结构式的相关信息我们可以修改设定参数来查看
c_4396 = pcp.get_compounds(4396, 'cid', record_type='3d')
c_4396 = c_4396[0]
print(c_4396.mmff94_energy_3d, c_4396.volume_3d)

当需要获取目标化合物的多种信息时,我们可以使用get_properties()来得到多种化合物的多种指定信息。

例如我们输入,IUPAC名称,分子式,SMILES,分子量,xlogP,tPSA,分子复杂度

import pubchempy as pcp
properties = ['IUPACName', 'MolecularFormula','canonical_smiles', 'MolecularWeight', 'XLogP','complexity' ]
a = pcp.get_properties(properties, 'alanine', 'name')
print(a)

通过调整参数as_dataframe=True我们可以把所需要的信息转化成Dataframe格式便于浏览和检阅。对于分子式是C6H6Cl6的化合物,可得到六氯化苯及其所有的同分异构体的全部信息。

import pubchempy as pcp
import pandas as pd
C6H6Cl6_info = pcp.get_compounds('C6H6Cl6', 'formula', as_dataframe=True)
print(C6H6Cl6_info.head())
C6H6Cl6_info.to_csv ("D://1.csv",index=False,sep=',')

也可以利用get_properties()来得到选定的化合物性质信息

C6H6Cl6_info_properties = pcp.get_properties(['isomeric_smiles', 'iupac_name','molecular_weight','xlogp', 'rotatable_bond_count'], 'atrazine', 'name', as_dataframe=True)
print(C6H6Cl6_info_properties)
C6H6Cl6_info_properties.to_csv ("D://1.csv",index=False,sep=',')

其中“atrazine","name"可使用不同的信息进行检索,如:分子式等。

参考内容:
链接: link.

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值