生信自学入门
什么是生物信息学?
生物信息学和遗传学、分子生物学等传统的生物学不同,它是一个计算机+数学+生物学的混合体,随着人类基因组计划而兴盛,随着生物数据的不断丰富,生物信息学也在不断发展。我认为生物信息学的核心在于生物数据的处理。
生物信息学是一个交叉领域,但对生物知识的要求并不高,不像分子生物学等传统生物学,完全可以一边进行生信训练一边补充相应的生物知识,这是因为生物的复杂性决定了目前生物学的很多知识往往都是脱胎于观察到的某些现象,非常零碎。当然,也不是说生物知识不重要,毕竟生物信息学嘛,生物放在前头,必须了解一些生物知识,否则也不能很好的理解、处理生物数据。
设定目标
入门阶段,设定一些具体、可定量的目标,比如利用某个数据集复现文献中的成果
工具准备
Linux
生物信息学的核心在于数据处理,对于极大数据量的生物学数据来说,必须依赖于计算机进行相关分析,而且一般的个人PC不足以支撑,所以使用服务器成了一个良好的选择,而服务器一般运行的都是Linux系统,这就要求我们要有使用Linux的能力,当然,不必多么精通,只要了解Linux,灵活使用一些基本命令就够了。
学习材料:http://wiki.jikexueyuan.com/project/learn-linux-step-by-step/
http://www.ehbio.com/Bioinfo_bash_course/index.html
Python
生物信息学必然离不开程序设计,python据说是最容易学会的语言,并且拥有非常活跃的社区,而且对数据分析的支持非常好,还能进行机器学习统计分析,是一个程序设计语言入门到深入的好选择。
学习材料:https://bop.mol.uno/03.2.translator-preface.html
R
R语言所做的图是非常漂亮的,而且R语言非常适合统计学,这和它的诞生有关。R在下游分析中的应用非常广泛,有必要好好学习。甚至对于微生物组学分析来讲,基本可以利用shell+R进行很多分析,是一个值得尝试的选择。
学习材料:https://www.runoob.com/r/r-tutorial.html
项目实践
一定要动手进行项目的实践,造轮子的过程中各种问题的解决,每一行代码的理解都在加深你的生信能力,有付出一定有回报。
能力进阶
生物信息学很多优秀算法都是开源的,可以很方便的在github上找到,学习他们的源码有助于你对生物数据分析的理解。同样的,开源社区一般都比较活跃而开放,这就使得优秀的算法、相关的知识技术更新很快,要一直保持学习状态,跟踪研究领域的前沿(一般CNS就显示了热点和前沿)。
同样的,生物信息学的核心在于大数据处理,大数据处理的核心就在于数理统计,对相应的统计学知识,如假设检验、随机森林、回归分析等,在入门之后有必要进行这方面的训练。