正文
“21世纪是生命科学的世纪,因为各行各业都有生物背景的人”,这是生物人自黑。唯有一个生物领域吸(hu)引(you)来了各种学科背景的人——生物信息学(bioinformatics or computational biology)。小哈出身生信大牛组,组里有数学、计算机、物理、生物、医学、化学等各种专业背景的。后来误入生信应用圈,经常遇到生物或医学背景的人问:“想学生信,如何入门?”
先认清形势。各学科背景入生信这个坑,是什么状态?
生信算法和工具的开发者,本科都是啥专业?
dchip,北师大,数学
BWA,南京大学,物理
RSEM,上海交大,计算机
GFOLD,山东大学,计算机
MACS,北大,地球物理;南京大学,物理系
clusterProfiler,华南农业大学,生物技术
BETA,山东大学,数学(美女)
CistromeMap,上海交大,生物医学工程;同济大学,生物信息;东北农大,生物学
CistromeFinder,北邮,计算机
Cistrome Data Browser,南京农大,统计学;华中农大,生物技术;四川农大,植物保护
MethylPurify,北邮,计算机(美女);大连理工,数学
BseQC,中山大学,生物科学(美女)
DiNuP,同济大学,生物信息
Dr.seq,哈医大,生物信息;同济大学,生物信息
不同学科背景的人走什么样的生信路?
数学、计算机、物理背景,进生信大牛组(dry lab),站在巨人肩上,能最大化的发挥你的优势。生信大牛长啥样?每3年至少发表一篇引用率高的算法文章,且每年都有跟湿实验室合作发表的高水平文章;
生物、医学背景,进基础研究课题组(wet lab),掌握R、shell和python,熟悉生物数据库;进有临床医生的应用研究型课题组,进一步掌握临床数据库(例如临床样品的基因组数据cBioportal,临床统计数据SEER);医学背景,至少学会R语言,侧重临床数据库的挖掘;进生信大牛组,参考大牛组博士后招聘要求,练好本领;如果能把R语言练到炉火纯青,可以进咨询公司;如果想开发算法和工具,只有数学专业才行?NO,回到楼上看生信算法和工具的开发者,本科都是啥专业。
看本文的大多是生物或医学背景,要么身在生物实验为主的基础研究型课题组,要么在临床医生为主的应用研究型课题组,统称wet lab。想要自学成才,具体怎么做?
按需学习,最高效
擅用Google,google scholar,google group(这个帖子告诉你怎样打开google:生物人高效工作之——办公软件);
零碎时间搜微信。带有“生信”字样的公众号有80多个,用汉语传播生信技能。遇到好帖子,收藏。关注该公众号,能挖掘到更多宝藏,菜单栏里可能有整理好的专题。持续关注适合自己的几个公众号,每天刷一刷,例如生信技能树,R语言中文社区,嘉因生物等等;
整块时间掌握网页版工具和数据库。登录电脑版微信,打开收藏的帖子,动手实践,实践,实践;
挤出大块时间入门R语言,并实际操作几个用得着的package。从看懂别人写的脚本开始,到修改模仿,到自己写命令,debug。
结合系统学习,螺旋上升式发展
进dry lab学生信和在wet lab自学生信,有何不同?
入门
dry lab:进组Training,师兄师姐传帮带;
wet lab:去培训班学习,做项目,培训班,做项目。。。可以开培训班了;
做什么课题
dry lab:又发明了哪个高通量技术,老板跟哪个wet lab合作;
wet lab:Bench work做哪个课题,科室有什么sample;
选哪个工具?
dry lab:服务器上装了哪个,老板让我写哪个(工具);
wet lab:paper里用哪个,review总结了哪些,seqanswer推荐哪个,哪个能安装成功,哪个能跑通;
用哪个数据库?
dry lab:UCSC,NCBI,cBioportal,Cistrome,服务器上师兄建的motif数据库(未发表),老板让我建的数据库;
wet lab:UCSC,NCBI,cBioportal,TRANSFAC free trial,JASPAR,starBase,ExPASy,COSMIC。。。
遇到技术难题,如何解决
dry lab:搜google,问师兄师姐,问老板;
wet lab:搜google,搜微信,问seqanswer,问QQ群,问微信群,email问作者;
如何解决生物学问题
dry lab:尝试n个算法,测试n套数据集,为解决该问题建立了一套method。解决此问题的method,不一定适用于彼问题,换一个生物学问题,再来一轮纠缠;
wet lab:cufflink,HTSeq,RSEM,哪个适合就用哪个
毕业时掌握了哪些武器
dry lab:表观遗传,RNA剪切,蛋白磷酸化(此处逗号 = OR);
wet lab:RNA-seq分析,ChIP-seq分析,microarray分析,可变剪接,鉴定新的miRNA、lncRNA、circleRNA,miRNA、lncRNA靶基因预测,进化树,蛋白质组数据分析,磷酸化、糖基化位点预测,抗原决定簇预测,临床数据分析(此处逗号 = AND)
上面是小哈的一家之言,看看各种学科背景的生信人怎么说?感谢小伙伴儿们捧场 ~
Tarela的妹妹:生物信息的优势在于探索,很多人认为会跑软件看质量处理数据就能称为生物信息了,其实这些东西是个人就能做,并不需要我们。适合我们发挥的环境在于,我有一个系统(比如研究胚胎发育,研究代谢,研究特定癌症),我有一些线索(比如转录调控,染色质结构信息),我想知道在这个过程中到底发生了什么。这时候才需要生物信息,需要我们了解情况(收集文章,研究背景);搜集证据(相关数据);一步步探索这个世界的真相(找到你所关心的机制);并公之于众(撰文发表)。很多时候我们的工作更像是一个侦探,真相只有一个,我们的任务就是借助有限的资源和线索,通过各种手段(整合数据,设计方法,寻找角度,搜集证据论证)来揭示这个藏在数据背后的真相。
(侦探一号)
皓翔:在运用生物信息学方法解决生物问题时,尝试的过程会令人沮丧,因为试了好多方法都不work,最后,在将要放弃的时候,突然见到了光明,然后就可以把研究继续下去。
(wet lab老板里有几个能够明白生信分析不是跑pipeline?)
丢勒的兔子:作为养过兔子、解剖过小白鼠的我,算是生物学背景的学生了。至今仍然十分感念,生物信息学为我打开了生物学的另一扇窗,从而重构了我对于生物学这个学科的整体理解,锻炼了我从数据出发进行思考的能力。也许我在算法上不如数学背景的同学那么精深,在编程上不如计算机背景的同学那么纯熟,在建模上不如物理背景的同学那么巧妙,但是我可以发挥自己的优势,将一个生物学问题分解成一个个相对容易完成的小任务,还可以更快地把数据上体现出的特征与生物学上待解决的问题进行关联。总之,古人云:“什么都略懂一点,生活更多彩一些”,与各位共勉。
(此人传承了他导师的精神:与生物学家讨论时,谈计算机;与计算机专家讨论时,谈统计;与统计学家讨论时,谈生物学问题)
降维:生信作为一个交叉学科,涉及到的知识非常广泛。作为一个从本科就开始念生信的人,我觉得应该在初涉猎生信时,学习理论知识尽量认真严谨,向深处钻研,注意避免在科研中不求甚解。
羊咩尼:想要入门,对于我而言,最重要的是积累生物学和医学的知识,努力做到从生物学家的角度去思考问题,因为只有这样才能找到有意义的问题。
(这家伙不是生物\医学背景)
Sara:其实生物信息学对数理的要求并不是很高,很多问题用极其简单的方法就可以做出漂亮的结果。好的方法并不是一堆公式唬到一片人,而是大部分人能接受的逻辑,简单的算法就可以做到的。生物信息关注的问题奠定了这项研究的高度,因此,与生物学家,医学家紧密的合作是必不可少的,大家应该一同努力,探索生命的奥秘!
(简单的方法,简单的算法。。。可能因为你是数学背景)
samleo:误打误撞进入生物信息这个圈子,总结过去几年的经验,我觉得学好生物信息有几个过程,首先是编程能力,有能力把自己的想法用计算机语言实现出来;其次是统计学方法,熟悉常用的机器学习算法,知道如何运用,最后就是一个好的生物学问题,这也是最重要的和最难的。
(这家伙是统计学背景的)
栗树山:生信还是计算或数理相关专业背景的人做比较好。最核心的能力是寻找问题的能力,而且是能够不断找到新的、重要的、可以用生信手段解决的问题,能达到这个层次的人是需要很长时间的训练和刻苦学习的。
(论刻苦学习,看看楼下这位)
jinlong:小哈让我讲讲R语言该怎么学?
说一下自己学习R语言的过程,其实我的经历应该还是挺励志的。
因为是学植物学出身, 我没有什么良好的数学和编程天赋。 博士一年级开始认识到统计学很重要,并终于理解了t检验、方差分析、相关检验、线性回归等基础统计学内容。然后听一位师兄说R软件很重要,我看了一下R绘图很美观并且可以计算生物多样性Shannon等指数,于是开始学习R。我原本没有任何编程基础,只是大学时学过VISUAL BASIC , 不过当时VB也没学明白。我开始学习R, 一边看书, 一边动手练习,逐渐觉很有意思,后来在读博期间狂看十几本R英文书籍, 并把其中大部分练习都做了,还钻研了相应的算法,开始学习C、C++以及Python, FORTRAN等语言。
从开始接触R,到半年后, 我学会了编写函数,随着函数的增加, 到处都是R函数,也不是办法, 于是一年后我开始学习编写R程序包。随后编写了spaa, phylotools, plantlist, HK80等程序包。因为这些程序包很实用,所以受到生态学领域师生的欢迎,之后我被邀请到中科院昆明植物研究所、北京林业大学、中科院西双版纳植物园、中科院华南植物园做数据分析培训。
个人感觉学习R最重要的还是动手去做, 在练习中去学习,去理解,然后再学习相关的理论,自然就能融会贯通。
我目前工作是管理一个小型植物标本馆, 也会用R制作标本馆的网站,进行数据分析等。
(这家伙写了7个R包,还被R语言大会邀请去做报告,是生物/医学背景的R语言学习榜样)
Y叔:用心便能专业,多实战练习很更要,projecteuler和rosalind是你的朋友!
(有了这两位朋友,数学、编程都不怕。Y叔写了8个R包,ggtree才是他的真爱)
Josef Allerberger:一个入门办法,就是多看看BMC Bioinformatics,Bioinformatics,NAR等杂志上介绍的生物信息学数据库。根据自己的需要,掌握一些实用的小工具,例如Venny等。
间歇性亢奋:如果你也是生物背景,三点建议:1. 从一开始花点时间形成一个好的编程习惯;2. 好好学统计;3. 相信一切都会好起来。
黑猫警长:生物信息学对学生物的人来说算是一门门槛比较高的学科。刚开始比较困难,看书看别人code查Google,但最重要的是不断去写code,不断练习,生物信息不再是天方夜谭。
糊涂球:生物背景的人最开始要掌握一门编程语言,这样你才能操纵数据和可视化,接着转换用数据的思维看问题。这个过程最好有个简单的纯生信课题,然后边学边做。生物背景的人在现在有各种各样高通量数据的时代非常有利,因为比较容易把不同领域的数据进行联网发现新问题。idea为先,方法啥的偷学下人家计算机和统计。
(精通R语言,以后还能进入数据可视化领域)
肉蛮多:做生信也有捷径,除了精通算法和模型,也要通过和医生及生物学家的交流多了解数据本身特性,真正掌握生物学意义,而不是单纯的建模和计算。两手抓,两手都要硬。
黑蜡:我觉得做生信就如同《暗算》里的破译员一样,要在死尸般的数据中寻找结论。需要自己有明确的目标和不动如山的信念。
(侦探二号)
adam:从做实验自学转到生信也有三个年头。从一开始学习各类数据分析方法,到逐渐理解数据分析对解决生物学问题的意义。生物信息既是一个工具,也成为了一位好伙伴,帮助我们从随机的杂乱的数据中找到隐藏的真谛。
不信CNS:我是分子生物学硕士转行学习生物信息的,我觉得生物信息或者大数据是要回答生物学问题,这个是生物信息的道,具体某个软件、某个参数只是术。有些生物背景很弱的人尽管数学、编程功底好,但是抽提不出有重要生物学意义的算法问题,往往是走入了术的误区。
蓝雪无痕:生物信息是一门综合学科,需要一定的统计知识,一定的编程技巧,但不要忘记你需要解答的是一个生物问题。所以做课题要记得你的生物学假设是什么。
小小秋:生物信息方法说到底是解决生物问题的方法之一,主要通过整合统计、计算机等方法来解决生物问题。比如就一个感兴趣的生物问题,产出相应的大数据,再结合一些现有的数据资源,逐渐接近问题本质。这个过程中需要探索的东西很多,对生物问题的理解,对数据的解剖与整合。我们可以在这之中找一个自己擅长的点,对于其它自己略懂的点,找好合作对象,一起攻克。
(不怕神一样的对手,就怕猪一样的队友,好的合作对象长啥样?)
这些年,生信应该说是众多生物专业方向里就业率Number1的热门方向了!同等学历下来说,毕业薪资也是比其他方向高出一个level!同时,作为融合生物、计算机科学、数学等专业的交叉学科,也成了众多想跳出生物圈童鞋的一个跳板,毕业后可以走向IT、投资、公务员(有专门针对生信专业的公务员岗位哦)等各种圈!学生信!不后悔!