看这里,三分钟教会你使用R语言msa包,让序列比对不再是难题!!






看这里,三分钟教会你使用R语言msa包,让序列比对不再是难题!!

小果  生信果  2024-03-17 19:00:08

欢迎大家来到小果的生信课堂!今天,我将通过介绍一款强大而便捷的R包——msa包,带领大家感受使用msa包进行多序列比对的便利。我们熟知的多序列比对算法像ClustalW、Clustal Omega和MUSCLE等,通常作为独立的命令行程序存在,未能融入我们常用的R语言和BioConductor生态系统中。然而,msa包的出现,使这一空白得到了填补,它为我们提供了在R语言环境下进行多序列比对的便捷途径。想象一下,仅在R语言的环境中,我们可以轻松操控强大的msa包,使进行多序列比对和构建系统发育树变得简单而有趣。
首先,我们将深入介绍msa包的安装和配置过程,接着,我们将学习如何准备输入数据,紧接着我们将通过实际案例演示,展示msa包在R环境中进行多序列比对以及结合其他R包构建系统发育树的威力。希望大家能够通过本次学习,掌握msa包的使用技巧,让多序列比对过程变得简单、有趣,为自己的生物信息学研究添加更多乐趣和深度!接下来,就让小果带领大家正式开启今天的学习吧!         
本次介绍的R包在服务器可以更加方便运行,如果没有自己的服务器欢迎联系我们使用服务器租赁~



公众号后台回复“111”

领取本篇代码、基因集或示例数据等文件

文件编号:240314

需要租赁服务器的小伙伴可以扫码添加小果,此外小果还提供生信分析,思路设计,文献复现等,有需要的小伙伴欢迎来撩~


msa包介绍    
“msa”包是一个用于生态学研究的R语言工具包,主要用于构建和分析多样性和相似性网络。它提供了一系列函数,可用于基于生态数据构建网络,以节点表示物种并使用边表示它们之间的关系。该包还包括函数,用于对网络进行统计分析和可视化,帮助研究人员理解生态系统中物种多样性和相似性模式。         
msa包的安装
msa目前最新版本: 1.34.0,是由BioConductor公司提供。
安装方法如下:
if (!requireNamespace("Bioimager", quietly=TRUE)) install.packages("BiocManager")BiocManager::install("msa") # 安装测试msa包是否安装成功,输入library(msa) # 加载R包packageVersion("msa") # 查看R包的版本
显示如图,说明msa安装包已经成功安装在R语言中,并且版本为1.34.0,现在msa包现在就可以使用了,你可以开始进行多序列比对。          
使用msa包进行多序列比对    
为了说明msa包基本的分析流程,本文通过一个msa自带的示例文件的例子进行展示,希望同学们可以举一反三,将msa包运用到自己的生信分析中去。
让我们首先从msa包提供的其中一个示例文件中加载氨基酸序列:
mySequenceFile <- system.file("examples", "exampleAA.fasta", package="msa") #加载文件mySequences <- readAAStringSet(mySequenceFile) # 读取到变量中mySequences #显示结果
显示如下图所示,即加载成功。
既然我们已经加载了序列,那么我们就可以运行msa ( )函数进行序列比对了,默认情况下,默认参数下运行ClustalW:
myFirstAlignment <- msa(mySequences) #多序列比对
除此之外,msa还可以通过设定参数来改变序列比对方法。如下图命令所示:
msa(mySeqs, method=”ClustalW”, “ClustalOmega”, “Muscle”) # 示例文件,不用运行    
myFirstAlignment # 显示多序列比对结果
显然,默认的打印函数为了紧凑的输出而缩短了比对结果长度。msa包提供的print ( )函数提供了一些自定参数,例如,分块显示整个比对结果。
print(myFirstAlignment, show="complete") # 显示完整结果
使用了show参数并将值设定为complete,会将比对结果完整打印出来,这里只展示最后一行输出内容以供参考。
msa包还提供了函数msaPrettyPrint ( ),它允许使用LATEX包的TEXshade打印美观的多序列比对结果。作为一个例子,下面的R代码创建了一个PDF文件myfirstAlignment . pdf。
msaPrettyPrint(myFirstAlignment, output="pdf", showNames="none", showLogo="none", askForOverwrite=FALSE, verbose=FALSE) # 画出美观比对图
   
显示如图所示,LATEX包的TEXshade需要额外安装,有需要的同学可以自行安装,此处不做赘述。
结合seqinr,ape进行系统发育树构建
文件格式转换
Class(myAlignment) # 查看数据格式
由图可知myAlignment文件格式为”msa”,构建系统发育树,需要把格式转换为seqinr包下的alignment格式    
library(seqinr) # 加载seqinr包myAlignment2 <- msaConvert(myAlignment,type="seqinr::alignment") # 数据格式转换class(myAlignment2) # 查看数据格式
d <- dist.alignment(myAlignment2, "identity") # 计算比对距离library(ape) # 加载ape包hemoTree <- nj(d) # 根据计算的比对距离构建系统发育树plot(hemoTree, main="Phylogenetic Tree") # 将构建的系统发育树展示出来
结果如图所示:    
可知,通过msa包进行序列比,再结合seqinr,ape等其他R包就可以在R语言环境下画出系统发育树,为不会使用网页和命令行工具的同学提供了简单易懂的生信分析方式。
          
在本次课程中,我们一起探索了多序列比对这一生物信息学中的重要任务,并学习了如何利用msa包在R语言环境下进行多序列比对。
希望通过今天的学习,相信同学们不仅学会了如何使用msa包,更重要的是感受到了生物信息学带来的乐趣和无限可能。让我们带着这份热情和知识,继续探索生物的奥秘,解开更多科学之谜!         
同学们如果觉得写代码麻烦可以体验我们的云生信小工具,同学们只需输入数据,即可轻松生成所需图表。立即访问云生信
http://www.biocloudservice.com/home.html),开启便捷的生信之旅!    

小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!


定制生信分析

服务器租赁

扫码咨询小果


往期回顾

01

1024G存储的生信服务器,两人成团,1人免单!

02

单个数据库用腻了?多数据库“组合拳”带你打开免疫浸润新思路!

03

孟德尔随机化的准备工作,GWAS数据的网站下载方法

04

跟着小果学复现-手把手带你拿下IF=46.9Nature 级别的主成分分析(PCA)图!!