浅谈生物信息学
浅谈生物信息学
什么是生物信息学
“生物信息学(Bioinformatics)是研究生物信息的采集、处理、存储、传播,分析和解释等各方面的学科,也是随着生命科学和计算机科学的迅猛发展,生命科学和计算机科学相结合形成的一门新学科。它通过综合利用生物学,计算机科学和信息技术而揭示大量而复杂的生物数据所赋有的生物学奥秘。”
这是目前大家比较认可的对生物信息学的定义
生物信息学的发展历史
以人类基因组计划实施为界,生物信息学的发展大致经历3个阶段,包括前基因组时代、基因组时代和后基因组时代。
- 前基因组时代,有部分计算生物学家进行算法开发及核酸与蛋白质大分子数据收集及数据库构建。
- 基因组时代,由人类基因组计划的实施开始,先后有6个国家的科学家直接参与人类基因组计划项目开发,同时也有像Celera公司为代表的其他科学家进行基因组测序及相应数据分析软件开发。
- 后基因组时代,虽然进行了更广泛的生物物种的序列测定,但是基因组序列研究已经不是重点,更多的生物信息学研究人员转向研究蛋白质组、转录组、代谢组、比较基因组、结构基因组、功能基因组等研究领域。
如何入门学习生物信息学
生物信息学是生物学,计算机科学,以及统计学的交叉学科。在这里计算机科学和统计学只是为了解决生物问题而需要的工具,深厚的生物学背景知识才是重中之重,不要因为走的过远而忘记了当初为什么出发。生物信息学是为了解决生物问题而逐渐发展起来的。
毫无生物知识其实也说不过去。那么对于初学者来说,想要进入这个领域,一开始需要重点搞清楚一些基本概念。比如,什么是基因组,什么是转录组,什么是蛋白组,染色体是什么,什么是基因,基因重组是什么,什么是进化/演化,什么是表观遗传,什么是变异,变异类型有哪些,NGS技术是什么,测序仪的工作原理是什么,DNA是怎么被测出来的等。因为,你只有真正了解数据是如何来的,才能更好地明白该如何进一步的处理和分析这些数据,如何有效地挖掘出它背后隐含的生物知识。其次,是需要掌握一些计算机学和统计学知识
- 计算机科学 基因数据分析,并不推荐在Windows下完成,有很多的工具不支持,而且不利于学习,因此掌握Linux,特别是直接在Terminal中进行数据分析是必须的。生物信息分析主要分为标椎化分析和数据挖掘,标准化分析由于数据量很大,无法在个人PC机上完成,需要借助服务器完成,一般服务器使用的系统是Linux系统,数据挖掘部分可以在PC机上完成。我们不需要成为Linux专家。对于生物信息研究人员来说,只要了解Linux的文件系统结构,能够在Terminal中灵活运用基本的Linux命令就足够了。
数据挖掘的个性化分析部分,需要会些计算机编程语言,Perl,R或者python。这几门语言各自有自己的优点,perl语言处理文本文件是它的强项,在生物信息的数据处理过程中经常遇到的也就是基因和蛋白序列的处理。R语言的画图和统计方面很方便,也有专门的生物信息方面的R包源Bioconductor。而python虽然语法也比较简单,拥有强大的画图能力,但是机器学习大数据处理是它的优势所在,不过其biopython包对生物序列的处理还是很方便的。
- 统计学 生物信息离不开数学,准确地说是离不开统计学。有太多的数据分析都需要统计学知识的参与,包括常用的假设检验,贝叶斯推断、随机森林,SVM,回归分析,PCA等。因此,在你获得初步的基因数据处理能力之后,更进一步应该做的就是加强这方面的知识。
最后还是要带着生物学问题进行相关的数据处理。
常用的组学数据分析软件
生物信息的工具众多,要了解数据分析过程中常用的工具和软件,主要是:bwa,samtools,picard,GATK,bedtools,bcftools,vcftools,FastQC,MultiQC,VEP等。基本是在构造如WGS、WES这类分析流程时需要被用到的。另外,还有关于GWAS的一系列分析工具等,这些其实可以根据后续的具体项目逐步深入学习。除工具之外,基本的数据文件格式也必须认识,比如:Fasta,Fastq,BAM,gff,vcf等,《Bioinformatics Data Skills》这本书里面就系统讲了诸多在基因数据分析过程用到的工具和文件格式解析,值得一读。
多看优秀的组学算法
站在巨人的肩膀上才能看得更远。针对学有余力的人可以进一步学习,生物信息领域有一个比较突出的特点,就是绝大多数的东西都是开源的,很多优秀的算法和程序都能够在github上直接找到,比如,比对软件bwa和后缀树算法,Smith-waterman局部比对算法;基因组组装软件SOAPdenovo2的de Bruijn graph;变异检测GATK、freebayse、Platypus应用到的贝叶斯、最大似然、EM、Pair-HMM和高斯混合模型等;变异注释工具VEP,GWAS的一系列方法等。特别是GATK,它的文档写的很优秀很好。通过学习它们的源码,不但可以精进你的编程能力、算法设计能力,更重要的是还能让你深刻理解诸多组学数据分析的奥秘!这会在不知不觉中提升你对基因数据的理解,有种豁然开朗的感觉。
紧跟前沿。生物信息学以及现在的基因组学,知识的更新迭代可谓一日千里,可能半年不留神就会落后,所以平时一定要多看前沿的文章成果。看最顶级的CNNS(Cell,Nature,NEJM,Science)杂志。这些顶级杂志所代表的基本上就是领域的最前沿,这些文章大多都能给你带来新的视角,能够开阔你的眼界。带来看待问题、解决问题的新思路和新想法,会有助于做出创新性的工作。
推荐Rosalind 网址:http://rosalind.info/problems/locations/
生物信息学实战的英文网站,提供了大量的试题,用户能在线提交来完成。