BioMedR
使用背景
随着生物技术和信息技术的不断发展,化学和生物学领域的公开数据正在爆炸式增长。需要提取这些资源中的丰富信息,然后通过各种数据挖掘方法转化为有用的信息。然而,一个主要的计算挑战是如何有效地代表或编码被调查的分子物体(如蛋白质、DNAs)用于数据挖掘。BioMedR就是为了进一步探索这些复杂的数据而开发的一个综合工具包。
BioMedR是一种免费的R/CRAN包,用于化学、蛋白质、DNAs及其相互作用的配对样本的分子表示。目前版本的BioMedR实现了五种相似性计算方法、四种强大的聚类算法以及若干有用的辅助工具,旨在构建数据采集、数据检查、描述器计算和数据建模的集成分析管道。
install.packages('BioMedR')
或者
install.packages('devtools')
library(devtools)
install_github('wind22zhu/BioMedR')
官方声明的基本操作
Code1 获取分子
require('BioMedR')
id <- c('DB00859', 'DB00860')
SMILES <- BMgetDrug(id, 'drugbank', 'smile')
print(SMILES[1])
# 屏幕回显
Code2 计算分子描述符
require(BioMedR)
smi_f <- system.file('vignettedata/test.smi', package = 'BioMedR')
mol1 <- readMolFromSmi(smi_f, type = 'mol')
des_drug <- extrDrugALOGP(mol1)
print(des_drug[2,])
# 屏幕回显
Code3 计算序列描述符
require(BioMedR)
dna_seq <- readFASTA(system.file('dnaseq/hs.fasta', package = 'BioMedR'))
des_seq <- extrDNAkmer(dna_seq[[1]])
head(des_seq)
# 屏幕回显
Code4 计算交互描述符
require(BioMedR)
# results from above snippets
drug1_mat <- as.matrix(des_drug[2,])
drug2_mat <- as.matrix(des_drug[3,])
seq1_mat <- t(as.matrix(des_seq))
# Calculating
des_CCI1 <- getCCI(drug1_mat, drug2_mat, type='combine')
des_CDI1 <- getCDI(drug1_mat, seq1_mat, type='tensorprod')
# Show result
colnames(des_CCI1) = paste('CCI', 1:dim(des_CCI1)[2], sep = '_')
rownames(des_CCI1) = paste('ID', 1:dim(des_CCI1)[1], sep = '_')
print(des_CCI1)
# 屏幕回显
应用实例
使用的数据是G蛋白耦合受体(GPCR)数据集,第一列是KEGG蛋白ID,第二列是KEGG药物ID。前635行为阳性样本,后635行为阴性样本。运行代码的步骤和屏幕回显如下图(图1-4)
=》第一步:读取文件并检索分子数据集(图1)
=》第二步:计算分子描述符并生成相互作用描述符(图2)
=》第三步:训练随机森林分类模型,并进行5倍交叉验证(图3)
=》第四步:绘图接收器操作特征(ROC)曲线(图4)
从第2步中可以看出,使用了蛋白质的规范化Moreau-Brocor关系描述符和成分描述符用于编码蛋白质信息,使用了图形分子指纹和PubChem指纹用于表示药物信息,然后使用具有“组合”类型的getCPI()功能构建2166描述符的药物目标相互作用。通过使用这些描述符,随机森林模型建立了5倍的交叉验证。如图5所示,建立了一个相当强大的模型。交叉验证集的预测要求为0.807,测试集的预测要求为0.809。交叉验证的AUC为0.877,测试集为0.882。总的来说,随机森林模型得出了令人满意的预测结果。当然,通过选择更合适的描述符和建模算法,预测模型可能会不断改进。
提示:在BioMedR中,rf.fs()功能是根据随机森林算法创建功能选择的,可以与rf.cv()功能相结合,以完成更复杂的建模过程。
>>>end
致力于提供“一站式”科研服务

