用pandas库读入csv文件中一列smiles数据,并将其依次转换为mol格式,再用QED模块计算类药性。并在原csv表格中创建新的一列用于存放计算出的类药性
时间: 2024-06-11 12:06:43 浏览: 14
以下是Python代码实现:
```python
import pandas as pd
from rdkit import Chem
from rdkit.Chem import QED
# 读入csv文件
df = pd.read_csv('data.csv')
# 将smiles数据转换为mol格式,并计算类药性
qed_values = []
for smiles in df['SMILES']:
mol = Chem.MolFromSmiles(smiles)
qed_value = QED.qed(mol)
qed_values.append(qed_value)
# 将计算出的类药性添加到原csv表格中
df['QED'] = qed_values
# 将更新后的表格保存为新的csv文件
df.to_csv('updated_data.csv', index=False)
```
执行完上述代码后,将会生成一个新的csv文件`updated_data.csv`,其中包含了原表格的所有数据以及新的一列`QED`,里面存放着计算出的类药性值。
相关问题
用pandas库读入csv文件中一列smiles数据,并将其依次转换为mol格式,再用QED模块计算类药性,并写入原csv表格中
以下是一个示例代码,假设csv文件名为data.csv,smiles数据在第一列,需要安装rdkit、pandas和py3Dmol库:
```python
from rdkit import Chem
from rdkit.Chem import QED
import pandas as pd
import py3Dmol
# 读入csv文件
df = pd.read_csv('data.csv')
# 将smiles数据转换为mol格式,并计算QED值
qeds = []
for smiles in df.iloc[:, 0]:
mol = Chem.MolFromSmiles(smiles)
qed = QED.qed(mol)
qeds.append(qed)
# 将QED值添加到原表格中
df['QED'] = qeds
# 展示一个分子的3D结构
mol = Chem.MolFromSmiles(df.iloc[0, 0])
mb = Chem.MolToMolBlock(mol)
v = py3Dmol.view(width=400, height=400)
v.addModel(mb, 'sdf')
v.setStyle({'stick': {}})
v.setBackgroundColor('0xeeeeee')
v.zoomTo()
v.show()
```
这段代码首先读入csv文件,然后用循环将每个smiles数据转换为mol格式,并计算QED值,最后将QED值添加到原表格中。在最后展示了第一个分子的3D结构,需要用py3Dmol库渲染。需要注意的是,这段代码假设smiles数据在第一列,如果不是需要修改`df.iloc[:, 0]`的索引。
请用pandas库读入csv文件中一列smiles数据,并将其依次转换为mol格式
以下是Python代码示例:
```python
import pandas as pd
from rdkit import Chem
# 读入csv文件中的smiles列
df = pd.read_csv('data.csv')
smiles_list = df['smiles']
# 将smiles转换为mol格式
mol_list = []
for smiles in smiles_list:
mol = Chem.MolFromSmiles(smiles)
mol_list.append(mol)
```
其中,`data.csv`是包含smiles数据的csv文件。使用`pd.read_csv()`函数可以读入csv文件,然后使用`df['smiles']`选取其中的smiles列。接着,使用RDKit库中的`Chem.MolFromSmiles()`函数将每个smiles字符串转换为mol格式,最终得到一个mol对象的列表。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)