5.3 KiB
5.3 KiB
16元环大环内酯分子分析说明
文件说明
- notebook文件:
analyze_ring16_molecules.ipynb - 输入数据:
../output/ring16_match_smarts.csv(307个分子) - 输出目录:
../output/
使用方法
1. 激活环境
cd /home/zly/project/macro_split
pixi shell
2. 运行notebook
jupyter notebook notebooks/analyze_ring16_molecules.ipynb
或使用 JupyterLab:
jupyter lab notebooks/analyze_ring16_molecules.ipynb
3. 按顺序运行所有单元格
notebook会自动:
- 计算所有分子的药物性质(分子量、LogP、QED、TPSA等)
- 进行侧链断裂分析
- 统计每个位置(3-16)的碎片分布
- 生成分布图并保存到
output/目录
生成的输出文件
图片文件
-
ring16_molecular_properties_distribution.png- 分子性质分布图(4个子图)- 分子量分布
- LogP分布
- QED分布
- TPSA分布
-
atom_count_distribution_ring16.png- 每个位置的原子数分布(14个子图,位置3-16) -
molecular_weight_distribution_ring16.png- 每个位置的分子量分布(14个子图,位置3-16)
数据文件
-
ring16_fragments_analysis.csv- 所有碎片的详细信息- 列:fragment_id, parent_id, parent_smiles, cleavage_position, fragment_smiles, atom_count, molecular_weight
-
ring16_molecular_properties.csv- 所有分子的性质数据- 列:unique_id, mol_weight, logP, num_h_donors, num_h_acceptors, num_rotatable_bonds, tpsa, qed, num_atoms, num_heavy_atoms
分析内容
已完成
-
分子基本性质计算 ✅
- 分子量、LogP、QED、TPSA
- 氢键供受体数、可旋转键数
- 原子数、重原子数
-
侧链断裂分析 ✅
- 使用封装好的
MacrolactoneFragmenter类 - 批量处理所有307个分子
- 统计每个位置的碎片类型和数量
- 使用封装好的
-
分布图绘制 ✅
- 参考
test_align_two_molecules.ipynb的绘图逻辑 - 4x4子图布局,展示位置3-16的分布
- 使用 seaborn 和 matplotlib 绘图
- 参考
延伸分析建议
notebook的最后一个单元格(Section 9)提供了详细的延伸分析建议,包括:
优先级1(强烈推荐)⭐⭐⭐
- LogP分析:找出对亲脂性贡献最大的侧链位置
- QED分析:比较高/低QED分子的侧链差异
- TPSA分析:分析极性侧链的分布模式
优先级2(重要)⭐⭐⭐
- SAR分析:如果有活性数据(max_pChEMBL),分析结构-活性关系
- 特权侧链:找出高频出现在活性分子中的侧链
优先级3(有价值)⭐⭐
- 碎片多样性分析:统计每个位置的独特碎片类型
- 聚类分析:基于碎片指纹进行分子聚类
- 极性/疏水性分析:分析侧链的极性特征
可选分析 ⭐
- 3D性质:PMI、NPR等3D描述符
- Lipinski规则:检查类药性规则
- 立体化学:手性中心分析
代码示例
notebook中包含了完整的代码示例,可以直接运行或修改。主要功能:
# 1. 计算分子性质
props = calculate_properties(smiles)
# 2. 批量断裂
fragmenter = MacrolactoneFragmenter(ring_size=16)
batch_results = fragmenter.process_csv(csv_file)
# 3. 统计分析
df_fragments = fragmenter.batch_to_dataframe(batch_results)
position_stats = df_fragments.groupby('cleavage_position').agg(...)
# 4. 绘图
sns.histplot(values, kde=True, ax=ax, bins=30)
关键洞察
LogP的价值
- 反映分子的亲脂性,对膜通透性和药物分布至关重要
- 大环内酯通常LogP较高
- 了解侧链对LogP的贡献有助于优化药物设计
QED的意义
- QED综合评估"类药性"
- 大环内酯往往违反Lipinski规则(分子量>500),但仍可能是好药
- 比较高/低QED分子可以找出影响类药性的关键侧链
TPSA的重要性
- TPSA与口服生物利用度密切相关(一般<140Ų为佳)
- 极性侧链对TPSA贡献显著
- 可以指导侧链修饰策略
注意事项
-
环境要求:
- 需要安装
seaborn和matplotlib - 如果没有安装,notebook会提示:
pixi add seaborn matplotlib
- 需要安装
-
处理时间:
- 处理307个分子可能需要几分钟
- 绘制分布图也需要一些时间
-
内存使用:
- 批量处理和绘图会占用一定内存
- 如果遇到内存问题,可以减少
max_rows参数
-
图片分辨率:
- 默认使用 300 DPI 保存图片
- 可以根据需要调整
dpi参数
后续工作
根据分析结果,建议进行:
-
LogP与侧链的定量关系
- 计算去除各个侧链后的LogP变化
- 找出对LogP贡献最大的位置
-
活性数据关联(如果有)
- 分析高活性分子的侧链特征
- 找出"特权侧链"
-
碎片库构建
- 整理每个位置的常见碎片
- 用于指导新分子设计
-
机器学习预测
- 使用碎片特征预测分子性质
- 建立QSAR模型
参考
filter_molecules.ipynb- 分子过滤和断裂逻辑test_align_two_molecules.ipynb- 绘图逻辑参考src/macrolactone_fragmenter.py- 封装的断裂器类src/ring_visualization.py- 可视化工具
问题反馈
如果遇到问题:
- 检查是否在
pixi shell环境中 - 确认所有依赖包已安装
- 查看输出目录是否有写入权限
- 检查CSV文件路径是否正确