RDKit | 基于RDKit和k-均值对化合物进行非分层聚类

具有高相似性的分子组合可以改写为在化合物空间(化学空间)中具有短距离。在这种情况下,“相似性”和“距离”可互换使用。通过选择相距较远的化合物,可以构建各种化合物库。

如何建立高度多样化的化合物库

  1. 聚类方法
  2. 基于距离的方法
  3. 基于分类的方法
  4. 使用优化方法的方法

这次使用k-means方法(一种非分层聚类方法)从化合物库中选择“多样化”化合物。

 

基于RDKit和k-均值对化合物进行非分层聚类

导入库

from rdkit import rdBase, Chem, DataStructs
from rdkit.Chem import AllChem, Draw
from rdkit.Chem.Draw import rdMolDraw2D
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
print(rdBase.rdkitVersion) 

 

载入数据

suppl = Chem.SDMolSupplier('Screening_Collection.sdf')
mols_free = [x for x in suppl if x is not None]
len(mols_free)

你可能感兴趣的:(RDKit,化学信息学与AI)