UFO中文网

 找回密码
 注册会员
查看: 125|回复: 5
收起左侧

如何自学生物信息学?

[复制链接]
online_member 发表于 2022-12-13 19:31:17 | 显示全部楼层 |阅读模式
从头开始学,好想快点处理数据,很多时候都不知道目的是什么
online_member 发表于 2022-12-13 19:31:38 | 显示全部楼层
生物转生信,一路走过来,我的经历有一定的代表性。大学本科自学了Linux,临毕业又学了C++,读研期间学了Python,进而从生物走向了生信之路。我也总结一下这些年来对生物信息学的理解。希望对新人有所借鉴。
<hr/>
看透了如此多的秘密,我们已停止相信尚有不可知之物。然而,那不可知之物却仍然坐在那里,冷静地舔着自己的嘴唇。
                                                                                                              ——H.L. Mencken
尽管人类已把航天器送出太阳系,奔向了无尽的宇宙。而人类的眼睛,借助天文望远镜早已延伸到亿万光年之外。尽管蕴藏在原子内部的巨大能量已被发现并加以利用。但时至今日,人类对自身的了解,才刚刚起步。
一、生物信息学:源起

人类基因组计划(Human Genome Project,HGP),是人类下定决心认识自己的开始。这是一项可与阿波罗登月媲美的宏伟工程,它的目标,就是测定人类的基因组序列。随着计划的开展,产生大量的基因组数据面临分析困难,计算机辅助分析的手段不断被开发出来,进而形成了一门专业的学问——生物信息学。
下面是人类血红蛋白的一个beta亚基(HBB)的基因序列。这种序列类似于一副扑克牌,但只有不同的4张,分别是A、T、C、G。所有核酸都是由这4张牌不同的排列组合而成。比如人类基因组中这样的牌有30亿张。生物信息学是处理海量序列数据的利刃,是遨游数据海洋的一叶扁舟。
>NM_000518.4 Homo sapiens hemoglobin subunit beta (HBB), mRNA
ACATTTGCTTCTGACACAACTGTGTTCACTAGCAACCTCAAACAGACACCATGGTGCATCTGACTCCTGA
GGAGAAGTCTGCCGTTACTGCCCTGTGGGGCAAGGTGAACGTGGATGAAGTTGGTGGTGAGGCCCTGGGC
AGGCTGCTGGTGGTCTACCCTTGGACCCAGAGGTTCTTTGAGTCCTTTGGGGATCTGTCCACTCCTGATG
CTGTTATGGGCAACCCTAAGGTGAAGGCTCATGGCAAGAAAGTGCTCGGTGCCTTTAGTGATGGCCTGGC
TCACCTGGACAACCTCAAGGGCACCTTTGCCACACTGAGTGAGCTGCACTGTGACAAGCTGCACGTGGAT
CCTGAGAACTTCAGGCTCCTGGGCAACGTGCTGGTCTGTGTGCTGGCCCATCACTTTGGCAAAGAATTCA
CCCCACCAGTGCAGGCTGCCTATCAGAAAGTGGTGGCTGGTGTGGCTAATGCCCTGGCCCACAAGTATCA
CTAAGCTCGCTTTCTTGCTGTCCAATTTCTATTAAAGGTTCCTTTGTTCCCTAAGTCCAACTACTAAACT
GGGGGATATTATGAAGGGCCTTGAGCATCTGGATTCTGCCTAATAAAAAACATTTATTTTCATTGC参考:为什么说生物信息学是真正的大数据专业?
二、生物信息学:全景

生物信息学的应用领域非常广泛。小到细胞,大到生命之树,只要是生命,就有核酸,只要有核酸,就有测定序列的需求。
因为核酸是遗传信息的载体,遗传信息描绘了生命的蓝图。种瓜得瓜,是男是女,都由遗传信息决定。
测定核酸序列,才能从源头上探索生命的奥秘。当然我们也要小心还原论,认为只要测定序列就可以知道生命的所有秘密。但是对一个生命的研究,没有其核酸序列显然是不完整的。
我们可以从三个视角来总结生物信息学的应用领域,分别是:

  • 细胞
  • 生物体
  • 生命之树。
我专门有一篇文章介绍:生物信息学:全景,在此不展开。
三、从菜鸟到专家

1. 职业前景

生物信息学作为交叉学科,既要生物学知识,又要数理知识,还要编程。很多初学者往往感觉无从下手,产生畏难情绪,这是对自己的定位不清楚的结果。
我把生物专业人员的职业发展分成三个方向:

  • 生命科学专家。就是专注于解决生物学问题,不需要花心思去掌据计算机知识,可以与生信专家合作。生物信息学是数据驱动的科学,你手里有好数据,有资源,不愁没劳力、没合作者。很多老板,PI,就是这类人。
  • 计算生物学家。专注于开发生物信息学软件,为行业提供工具的人。比如开发短序列比对软件BWA等一系列工具的李恒等。他们是Tool makers
  • 介于两者之间,既懂点生物,也懂点编程,这就是搞生信的绝大多数的普罗大众了。通常是Tool users
  • 有没有两者融会贯通的顶尖高手呢?我暂时还说不上一个名字来。
2. 基础知识

假定你我都是第三种人。身处第三世界,那如何获得比较优势呢?

  • 分子生物学和细胞生物学,掌握基础知识。
  • Linux,熟练掌握常用命令;
  • Python,熟练掌握基础语法;
以上三种技能,需要优先掌握。并且这三种技能是可以在短时间内攻克的,一旦学会,终身受用。
对生物学知识的要求

生物信息学一开始对生物学的要求并不高,只需要具有分子生物学和细胞生物学基础知识就可以了。知道细胞里面有什么,中心法则上下游的一些概念。
参考书:《基因XII》。
为什么要学Linux?

因为生物信息学处理的数据通常比较大,普通笔记本和台式机根本承受不了,必须放在服务器上处理。而Linux是最常用的服务器操作系统。很多生信软件都是为Linux系统开发的,不会Linux,就没法使用这些优秀工具。不用担心,Linux是非常容易掌握的,因为我们的目的是使用,而不是研究操作系统。
参考书:
生信人的自我修养:Linux命令速查手册。相关命令我整理在一篇文章中,掌握这些命令足够用了。
《鸟哥的Linux私房菜》。作为参考书帮助理解上述手册中的命令。
为什么要学Python?

生物信息学使用各种软件,如何把不同软件串联起来工作,Python就是非常好的胶水语言。其次现成的工具有时不能满足数据分析的所有需求,难免需要自己写一些脚本协助解决,比如软件可能会给出许多结果,其中有不少的噪声,如何过滤这些结果,需要脚本。下面是一些比较好的教程。

  • 《Python简明教程》。适合快速入门。
  • 廖雪峰的Python教程。主要是掌握Python的语法,数据类型,文件读写等基础知识,像图形界面,网络编程,数据库可以先不用学。
  • Python官方文档。官方文档是最好的学习资源。入门之后,应该反复看官方文档。
聊一聊Perl和R。

早期生信人用Perl写的一些代码,现在还在工作。因此能看懂Perl代码很有必要,花点时间看一下基本语法就可以了。内置正则表达式是Perl的一大特色。而正则表达式在学习Linux和Python时,也需要了解。Perl总的来说是一种过时的语言,大量符号也不符合快乐编程的需求。人生苦短,我用Python
R,其定位是一个综合的统计绘图软件,不是一门编程语言,这点需要清楚。因此就算精通R,也不可不学Python/Perl。
最佳生物信息工作环境

最佳生物信息工作环境:Mac篇
最佳生物信息工作环境:Windows篇
SSH应用,如何优雅地登录远程服务器?
生物信息基础:conda包管理器安装和使用
代码版本控制及托管:我的最佳实践
3. 成为工程师

组学知识

生物信息学为测序而生。当前最成熟,应用最广的是二代测序(Illumina,MGI,Ion Torrent)。目前格局大致如下。

  • 一代测序通量低,数据分析容易,因而不需要太专业的人才。
  • 二代测序上游的PCR技术,现在面临NGS的全面挑战。PCR在特定领域有用,如新冠检测;但难堪大用,如肿瘤基因检测方面。
  • 新一代的三代测序,没二代配合还很难单独形成应用
  • 蛋白组,代谢组,刚刚兴起。
组学涵盖面也是非常大的。有DNA-seq、RNA-seq、ChIP-seq,基因芯片等。拿DNA-seq项目来说,涉及多个环节,每个环节可能就是一个工作岗位。

  • 基因组如何获得?
    测序,组装。测序花样多,二代,三代,Hi-C,光学图谱等,用一种技术,还是几种技术组合?有无参考基因组?情况不同,组装策略也不一样。
    从研究对象上来说,有人、动物、植物、微生物、病毒、线粒体、叶绿体,不同的研究对象,测序和组装的手段可能都不一样。
  • 基因组中有什么?
    注释基因组中的有效元件,如基因等。这是数学上的模式识别问题。同样研究对象不同,需要的生信手段也不一样。
  • 比较基因组学
    这是目前的热门。如临床上肿瘤基因检测,微生物基因检测等。以肿瘤基因检测为例,需要检测样本中的各种生物标志物,如:SNV/InDel,CNV,Fusion,TMB,MSI,LOH,HRD等。通过我这篇《基因大数据智能生产及分析》笔记。从中可以看到,仅仅在健康领域,基因组学和生物信息学的应用之广。
  • 生物进化
    通过基因组测序,研究物种的进化以及迁徙等,满足人们的好奇心。
由此可见,即便只是基因组学,一个人想掌握所有环节都面临巨大挑战。因此不要试图什么都学,要聚焦自己的课题,否则会很焦虑
要说哪些东西是组学中必须掌握的,我觉得有以下这些。

  • 测序原理:一代、二代、三代测序。Illumin、MGI、Ion Torrent、PacBio
  • 基本的文件格式:Fasta, Fastq, BAM, VCF, GFF
  • 数据质控:fastp,Fastqc, Multiqc
  • 比对软件:blast等。序列相似,推断结构相似,结构相似,推断功能相似,是生物学的基本假设。因而要深刻理解生物信息学中相似性比对的思想。
其他东西都是根据项目不同具体去了解,比如:
重测序WGS:主要就是走GATK最佳实践流程(针对人类)。
重测序Panel(WES/大Panel/小Panel):主要走Fastq -> BAM -> VCF -> 变异注释流程,用到的软件fastp,bam, samtools,bcftools, varscan, annovar, snpEff, VEP等。
病原微生物检测:主要是质控 -> 降噪 -> 去嵌合体 -> 生成OTU表 -> 物种鉴定 -> 功能鉴定。用到的软件,fastp,vsearch, usearch, Qiim2等。
参考书/在线课程:
《Bioinformatics Data Skills》——讲得基础。印象最深的是介绍find + xargs + parallel用法,至今受用,其他忘了。
《高通量测序技术》——李金明。介绍高通量测序在临床基因检测中的应用。
《生物信息学与功能基因组学》——非常好的入门教材。
《北京大学生物信息学在线课程》——偏重算法。
《山东大学生物信息学在线课程》——我没看过,但很多人推荐。
《陈润生院士中科院生物信息学课程》——课程虽然有点老(07-08年的),但讲解的知识现在也不过时。我当年主要看这个课入门,其次是北大的课。
我的转型之路:一个生信人的自白:从生物转生信,我的学习与工作经历
理论联系实际

最好的学习方法是项目驱动。每接手一个项目,都把它做到极致,这样随着经验的积累,能力自然也提高了。如果没项目,有这几个选择:

  • 找实习单位:有两个大方向,科研或者临床。
  • 参加竞赛:建议先用瓶中基因组计划中的NA12878样本,走GATK最佳实践流程,GATK官方网站有详细的使用文档。
  • 复现文章套路:套路不在多而在精。
业内经常举办一些“竞赛”。组织者获得一些问题的金标准“真相”,如组装一个基因组或评估变异检测流程的准确性等,然后邀请业界内成员在一定时限内来竞争解决这些问题。通过比较基于不同方法的结果,组织者可以评估每一种方法的性能,即真阳性和假阳性,真阴性和假阴性,并通过定义灵敏度和特异性来了解选用何种工具。一些竞赛案例如下。
名字/首字母缩写竞赛
GIAB瓶中基因组计划
Alignathon比较基因组比对方法
EGASPENCODE基因组注释评价项目
Assemblathon比较基因组组装软件的效果
GAGE基因组组装金标准评价
ABRF生物分子资源设施组织(ABRF)磷酸化评估
CASP结构预测的重要评估
CAFA蛋白功能的重要评估
CAGI基因组解释的重要评估
PrecisionFDA Truth Challenge精准FDA真理挑战赛
Rosalind通过解决各种问题学习生物信息学
值得一提的是瓶中基因组计划,其中的NA12878样本,被认为是研究得最清楚的人类基因组,因而是一个非常好的学习材料。此外临床基因检测方面,有一些室间质评的数据,带参考答案。这对于构建一个分析流程来说非常重要。除了用模拟数据,带标准参考答案的测序数据,对于检验流程的性能很有用。
4. 成为专家

选定一个领域,精耕细作,深挖一口井,假以时日,必有所成。专注一个领域,这样你虽然在就业市场上面临的选择少了,但是你精于某一方面,反而更容易找到工作,并且能谈到更高的价钱,毕竟你要的不是一个行业,你要的只是一份工作,要那么多工作机会干啥?一个就够了。
专业,你唯一的生存之道。
——大前研一《专业人士》
掌握一门高级语言

C/C++,Java,至少学一样。行业优秀软件如BWA,Samtools等,是C/C++写的;GATK,VarScan,snpEff等是Java写的。虽然咱们平时干活主要用Python,但掌握一门高级语言,有两大好处:

  • 可以编写高效率软件
  • 看懂优秀组学软件的源码
参考书,C++的:
《C++ Primer》
《C++编程思想》
《Effective c++》
研究优秀生信算法

这一点尤为重要,甚至比自己写软件重要。因为我们大概率写不出优秀的软件。但看优秀的源码,在IT行业是常识,生信也应如此。很幸运许多优秀的生信软件都是开源的,我们有机会通过源码,知道软件具体的工作方式。如此生信技能必将上一个台阶。这是一块硬骨头,也是成为高手的必由之路。
建议结合一本书看:《生物序列分析Biological Sequence Analysis》。曾经华大基因的王俊称赞这本书:是生信最好的教材,没有之一。
发现问题,解决痛点

作为专业人士,发现问题,解决痛点的能力非常可贵。这个时候你不再是一个跟随者,而是某一个领域的开创者。

  • 期刊杂志:Nature, Science,Cell,Bioinformatics。获得行业新视角。
  • 行业会议:尽量多参加重要的行业会议。
  • 行业政策:行业相关重要的政策文件,比如临床上各种指南、专家共识等。
  • 行业报告:比如基因慧的行业报告就很好。
  • 行业论坛:Biostars。专业的生物信息论坛。
  • 最重要的:Google,国内Bing。搜索引擎能解决大部分问题,往往比问人快。
最后附上《专业人士》对专家的定义:
有强烈期盼成功的欲望,对自己能够获得成功,充满自信。时刻保持一颗好奇心。为自信提供源源不断的动力。不敢怠慢自己的智慧,努力自我成长,为顾客提供最大价值。并能遵守纪律。达到以上条件的人就是专业人士,也称为专家。
四、求知若渴,不止生信

读书和运动,是普通人成功的捷径。
《物种起源》——达尔文。生命科学永恒的经典,书中的书。若只读一本生命科学著作,读它。
《生命是什么》——薜定锷。从物理学角度看生命是什么:生命是逆熵,生命通过耗散能量来维持自身的秩序。
《遗传学》——刘庆昌。与《基因XII》一样,案头必备。深入研究生命科学,遗传学必须精进。
《基因论》——摩尔根。遗传学经典科普读本。
《自私的基因》——理查德·道金斯。我们都是基因的奴隶。
《DNA:生命的秘密》——詹姆斯.沃森。DNA之父的作品,必读。
《上帝的语言》——弗兰西斯.柯林斯。一本有意思的书。作者是领导了人类基因组计划(HGP),他说自己的工作就是为了证明上帝的存在。
《基因传》——悉达多·穆克吉。关于基因的科普。
《癌症传》——悉达多·穆克吉。天生万物,死生轮回。癌症是否设定了人类寿命的极限?
《癌症.真相》,《癌症.新知》——李治中。癌症科普图书。
《人类简史》,《未来简史》,《今日简史》——尤瓦尔·赫拉利:人类简史三部典。我们从何处来,向何处去?从人文主义,到数据主义,再到半人半神,是否就是人类演化的方向?
《成事》——冯唐。要成事:结硬寨,打呆仗。
《明朝那些事儿》——当年明月。隐忍,知行合一。
《卓有成效的管理者》——彼得·德鲁克。管理者必须卓有成效。
《能力陷阱》——埃米尼亚.伊贝拉。人们习惯于做自己擅长之事,陷入自己的能力陷阱中不可自拨。作为专业人士尤其要注意,有机会要尝试跳出舒适圈。
《原则》——瑞.达利欧。关系 > 事业 > 金钱。
《你要如何衡量你的人生》——克莱顿.克里斯坦森。生活除了眼前的苟且,还有诗和远方。
五、最后总结

生物信息专业人士的成长路线是:

  • 掌握细胞与分子生物学基础知识
  • 掌握Linux常用命令
  • 掌握Python编程基础
  • 学习组学相关知识
  • 学习一门高级语言
  • 研究优秀生信算法
  • 发现问题,解决痛点,成为专家
作为一门交叉学科,生物信息学的入门是容易的,所需的计算机,数理知识,在这些学科看来也只是入门水平。因而很容易跨过初学者阶段。但我们始终要明白,所有的计算机,数理知识,甚至云计算,5G等技术,都是为生命科学服务的。我们似乎绕了一大圈,又回到了生命科学本身。
推动生命科学进步的,唯有生命科学家自己。

标题:如何自学生物信息学:从菜鸟到专家
版本:1.0 日期:2020-11-23
生信系列文章永久地址:https://jianzuoyi.github.io/
如果你也喜欢生物信息学,欢迎关注公众号:简说基因,让一部分人先懂生信。
online_member 发表于 2022-12-13 19:31:46 | 显示全部楼层
开始生物信息这个专业今年已经是第七个年头了,本科自己所学的专业就是生物信息学,同样是从一个小白开始,经过了相对系统的训练。更加能够体会生信学习如果没有领路人是非常困难的这一事实,因为要学习的东西确实很多,整个大一大二的时候课程几乎排满,但有幸的是现在入行生物信息学有很多优秀的项目以及很多经验可以参考,可以快速入门。我会把自己学习过程中踩过的帮大家毙掉,减少学习成本。
你真的知道什么是生物信息学吗?
生物信息学和应用生物信息学不知道大家有没有分清,现在生信炒的很热,说的大多也都是基于测序技术的发展,目前来看,大多数人理解的生信都是应用生物信息学,题主是临床医学,那么可以断定是应用生物信息学了。
什么意思呢?就是以生物信息学作为工具,诸如此类,入门相对容易,也并不需要太扎实恶的数理基础和计算机编程能力,而更严谨的生物信息学目前更多的是基于全组学的软件和算法的开发,这个前景是非常广阔的,也是需要很多优秀的生信人为之努力的,在这一块的关键核心技术是掌握在国外的,有点可惜,但是国内的生信时间还不长,相关产业还么有那么高端,未来还有很大的进步空间,相信未来可期。
聊一聊应用生物信息学
很多人是生物学出身,生信的一些大牛也曾说过不用过分迷恋生信,如果你能够把这个工具学好,更好的去解决生物学问题,那是极好的。
还是建议编程基础不强的的尽量不要做硬生信,就是软件开发和算法,这真的需要时间的积累,希望不要被很多人忽悠,做做项目,硬啃下几本书,一年半载就开发算法。这样的回答其实挺不负责任的,每个人的人生每一步都至关重要。如果有志于做这方面的,后期可以一起探究和学习,这里就不展开讲了。
如果做生信需要掌握什么?
1、首先是生物学知识,我的导师在面试我的时候考察了很多恰恰不是编程的知识,而是生物学的知识,她说很多博士对于基因结构的理解都不是很深刻。这里总结了导师讲的这方面的内容,希望有所帮助。
这可能是全网最详细的真核生物基因结构讲解
这一次对于生物学的知识我更加建议是根据自己所在领域的文献查漏补缺,大量阅读本领域的文献,了解自己所需要的基础知识。
2、测序原理
目前市面上测序技术层出不穷,二代三代技术交相辉映,眼花缭乱,认准一个全基因组测序或者转录组测序都可以,这些是基础,一通百通,初学者通一门比门门都懂,但是不精通要好的多。二代illumina测序十分经典,其中的原理一定要特别通透。
可以先看下视频:
Illumina测序原理v.youku.com生信基础
这一部分我进行了整理归类,也是按照学习路径来分的~
总论

  • 我要自学生信之生信基础:生信数据库大全
  • 生物信息学常见干湿实验原理汇总(文章推荐)
  • 实验室常用分子实验技术原理汇总
  • 这可能是全网最全的真核生物基因结构
  • 生物信息学必须要会的87个名词解释
转录组

  • 我要自学生信之生信基础:测序技术及其原理
  • 我要自学生信之生信基础:FASTA 与 FASTQ
  • 我要自学生信之生信基础-转录组代码篇:软件安装+数据下载+过滤质控
  • 我要自学生信之生信基础-转录组:转录组原理
  • 我要自学生信之生信基础-转录组:WGCNA全流程分析(入门篇)
  • 我要自学生信之生信基础:拼接原理
  • 我要自学生信之生信基础-转录组:分析流程大全解,看这一篇就够了
  • 我要自学生信之生信基础:基因预测和功能注释
  • 转录组完结篇:这可能是全网最详细的转录组教程(建库+测序+质控过滤+比对+定量)
表观遗传

  • 我要自学生信之生信基础-表观遗传:乳糖操纵子原理
  • 我要自学生信之生信基础-表观遗传:基于表观遗传的NGS技术概览
  • 我要自学生信之生信基础-表观遗传:chip-seq结果解读及应用
  • 我要自学生信之生信基础-表观遗传:精读ATAC开山之作
  • 我要自学生信之生信基础-数据库:关于KEGG,你想知道的都在这

3、项目经历
重复一篇数据好的转录组文章,这里可以给大家推荐一个,数据简单,适合新手
Transcriptome analysis of an apple (Malus × domestica) yellow fruit somatic mutation identifies a gene network module highly associated with anthocyanin and epigenetic regulation
我要自学生信之生信基础-转录组:分析流程大全解,看这一篇就够了
另外如果有机会一定要去实习:
比如华大、诺和这些,用来学习是可以的,大多数基因公司对实习的要求是不高的,勇敢向前拼
4、计算机基础
1)linux
基因数据分析,极度不推荐在Windows下完成,有很多的工具不支持,而且不利于学习,也不利于我们对数据的理解,不过,我们不需要成为运维专家,对于生物信息研究人员来说,只有了解Linux的一些常用命令即可。我也总结了常用的一些命令
分为几个部分
软件安装、文件操作、文本处理(awk、sed、grep等)、上传下载、目录(绝对路径、相对路径),基本熟悉这些就可以上手了,后续有需要的命令大家可以自己去找。我自己也总结了部分,还在继续整理中。

  • 我要自学生信之linux基础:轻松学会安装虚拟机,纯保姆级教程
  • 我要自学生信之linux基础:3分钟搞定生信linux常用命令
也推荐一个学习的网站。
Linux 教程 | 菜鸟教程www.runoob.com2)编程语言
关于R语言学习路径:

基础技能入门:安装加载包、数据结构、变量类型(str)、数据导入/导出(read)、数据筛选数据(filter/select)、合(merge)、匹配(match)、追加(mutate)、长宽转换(reshape)、数据索引(index)、循环(while.for)、判断(if)、排序(sort/rank)、缺失值(is.na)、正则
这一部分我推荐你看一些书籍,直接对着书上面进行基本技能练习,在这个过程中head、str、help函数的使用频率>=1000次是极佳的。哪一本都可以,比如这一本的第二版前三章
这个时候你的基础已经初步具备了,下面咱们就要开始做数据分析了。R做数据分析有些人比较喜欢用r-base(基础版本),当然我个人比较倾向于tidyverse(可以理解为加长升级版本)。使用前需要先安装然后加载他(安装就像你买了回来,加载表示你要用他了)。你以为这些就可以直接画图了吗?各种脏数据扑面而来,60%的时候就花费在了数据预处理上,我们看一下数据处理的流程。

如何自学生物信息学?746 / 作者:uec7898336 / 帖子ID:95893
第一步:数据预处理:
下面就开始第一步了,这里推荐完成 R语言数据处理120题 一定不要复制粘贴,一个一个敲起来。优秀的预处理能力是你的数据分析中的锋利的宝剑。尤其是在缺失值、异常值离群点、冗余数据的处理技巧上。
第二步:数据可视化
做数据可视化的过程中会涉及一些统计的知识,那么下面的一些统计基础就派上了用场。
如果是医学生,恰好有一本深得人心的医学统计书籍。
我自己也在着手更新:
其实什么类型的数据画什么图都是很有讲究的

如何自学生物信息学?428 / 作者:uec7898336 / 帖子ID:95893
至于画图的细节每一种类型的图都需要详细进行讲解,我的ggplot2科研绘图篇也即将开始更新了,可以和小柯一起学画图。先来张看一看效果~

如何自学生物信息学?388 / 作者:uec7898336 / 帖子ID:95893
赶着学习的可以多看看书,专门挑ggplot2画图这一节即可,理解底层画图逻辑(像PS的图层)。看视频虽然也讲的很清晰,但是最好还是查漏补缺用。我这里也更新了一些:

  • 一文搞懂ggplot2:老板再也不用担心我的科研绘图
  • ggplot2高效实用指南 (可视化脚本、工具、套路、配色)
  • 一文搞懂常用R语言统计值计算:打倒描述性统计拦路虎

第三步:数据建模
许多的数据可视化后不用建模就可以得出一定的结论,有些复杂的数据需要通过分类、聚类等不同的方式进行分析。可以分为探索性分析和预测性分析。这一部分我会单独在我的专栏进行讲解,这里就不展开了。至于深度学习的部分还是推荐用python。

关于R语言学习的一些疑虑
1、没有编程基础怎么办
R是我学习的第一门正式学习的编程语言,零基础也可以学会,达成目的即可,有时候只是为了画图而已,坚持一切编程都是纸老虎(怕就永远都不会)。
2、前面的学习路径还是不是很清晰,能不能简单再顺一下

  • R语言实战前三章
  • 数据处理120题
  • 基本图形+统计学了解
  • ggplot2科研绘图
3、学习路径太慢,可不可以直接开始科研绘图
亦可,边学边整理数据处理和统计相关知识,但是前面的基础技能还是需要看完,后期需要大量项目来进行补足,题海战术在语言学习中依然适用。你是不是想和我说没有办法实战怎么办?我……好人做到底,论文中的图片哪里来,R绘图来,数据哪里来,论文里面来(拿起论文-下载数据-开始画图
R语言的学习教程我已经开始陆续更新,更加贴近实际引用,解决问题:
R总论

  • R语言入门:你想知道的都在这里
  • R语言入门推荐:玩转数据处理120题(R语言tidyverse版本)
R绘图

  • 一文搞懂ggplot2:老板再也不用担心我的科研绘图
  • ggplot2高效实用指南 (可视化脚本、工具、套路、配色)
  • R语言:添加p-value和显著性标记
R语言与统计

  • 一文搞懂常用R语言统计值计算:打倒描述性统计拦路虎
  • R语言统计篇:t检验
  • R语言统计-回归篇:简单线性回归
  • R语言统计-回归篇:多项式回归与多元线性回归
  • R语言统计-回归篇:回归诊断

关于Python语言:
关于python学习,我不推荐一开始就看太难的书籍,编程语言也很容易劝退,也不希望你只是在单纯的记忆理论,因为那样并没有太大的效果,我个人觉得还是从实战出发:
推荐一本入门的书籍:
理解这本书大约半个月左右的时间,并不会太耽误你的时间。看这本书实战的同时我还希望你做一些很通用的小项目,先在实验楼上进行学习,可以验证你的答案是否正确,这在初期是非常重要的,你一定要能够明确知道你做的是否正确:
精选项目课程_IT热门课程_蓝桥课程 - 蓝桥www.lanqiao.cnwww.lanqiao.cn与此同时,我常常遇到一些完全零基础的初学者,一看到晦涩难懂的代码就直接放弃,还有一部分人学习的过程中不注意代码规范,写出来的代码可读性很差,可以推荐大家看下百词斩的夜曲编程,这个软件最好的一点是规范性,会把细节的问题做成题目加深理解,比如代码缩进,同时支持在线编程,利于因为软件安装劝退的人

如何自学生物信息学?882 / 作者:uec7898336 / 帖子ID:95893
另外很多同学都处于一个比较忙的状态,这个程序可以在微信公众号学也可以网页学,公众号直接关注夜曲编程,网页直接搜索就可以,还是比较方便的。很多初学的编程者路径不正确,对于很对概念理解都非常不清晰,这对于后续的学习是非常不利的,基础不牢,地动山摇,这个软件里的概念卡可以帮助家理解和记忆编程概念,最后的思维导图也可加强记忆。这一点对于初学者还是非常重要的。

如何自学生物信息学?256 / 作者:uec7898336 / 帖子ID:95893

如何自学生物信息学?985 / 作者:uec7898336 / 帖子ID:95893
有一定的基础之后,也许你已经摩肩擦掌准备迎战了,这个时候的你需要有一个大神带带你,一个人闷头苦干虽然很英雄,但我并不认为这样的英雄主义可以提高你的效率,开始入手github吧,如果你对github不算很熟悉,我恰恰写了一篇github的文章:自学生信之番外篇:一键解锁github 希望能够有所帮助
github上面的python100天的项目我本人极为推崇。它可能不是最好的,但是对于初学者是比较适合的,有人带你学习是一件非常幸福的事情。先放一下github的链接。

如何自学生物信息学?687 / 作者:uec7898336 / 帖子ID:95893
也许你会觉得有点难,突然觉得自己好婆妈,没有关系,作者把前面入门的15天重新做了一个50天练习的项目。

如何自学生物信息学?468 / 作者:uec7898336 / 帖子ID:95893
我希望你能够着重注意一下正则表达式的应用(生信中你将经常用到他们): 正则表达式30分钟入门教程
这里我特意提及Numpy、Pandas、Matplotlib这三个库,着实是因为他们很重要。
Numpy:利用Python科学计算的基础包,对Numpy的掌握将会帮助你有效地使用Pandas等
Pandas:结构和操作工具,能够使Python数据分析更加快速和容易
Matplotlib和seaborn:Python可视化库。散点图、箱线图、小提琴图等都是手到擒来。
自学生信-机器学习python数据可视化:一节课入门seaborn
如果你能坚持走几年生物信息的道路,我想未来在生物信息学领域的深度学习会大量运用的,这几个库的熟练应用会给你一些助力,如若有机会你自己也可以尝试实现一些数据挖掘的算法,解锁一些你对于python的期待:数据挖掘18大算法实现以及其他相关经典DM算法
一点建议:我不是很希望你看大部头的视频,我希望那些是你在遇到一些问题无法解决时用来查漏补缺的,我看过很多的pyhon学习视频,大多大而全,即便可以坚持,却容易陷入耗时久远而无法解决问题的困境,没错,我在这样的循环中用了一年多才醒悟。走错的路不希望其他人重走自己的路,仅此而已
3)编程原理
当你有了一些基础后,可以开始写一点点代码了,那就要考虑代码的效率问题了,以及如果能够写出优美而省时的代码。这就要依靠数据结构和算法来实现了。
推荐入门书籍:

数据结构与算法篇:
这个一脉相承,是用python写的,有学C的强推大话数据结构
关于计算机这块可以看下之前我的回答,比较详细
生物信息学要求的计算机水平等级如何?www.zhihu.com5、统计学+算法
生物信息离不开统计学,假设检验,贝叶斯推断、随机森林,SVM,回归分析,PCA等等等等,R语言高级绘图的部分和这一块紧密相连。
关于贝叶斯这篇文章写的自认可以(不要脸的自夸)
https://zhuanlan.zhihu.com/p/250777098统计基础(在R语言的部分已经讲)
再加一本入门书籍推荐(除了医学统计学):

6、机器学习
西瓜书+南瓜书,周志华的西瓜书确为机器学习入门的经典教材,但是其中很多公式的推导初学时真的看不懂啊。南瓜书就解决了这一点,带你的数学水平提到周老师眼中大二下的水平。

南瓜书的电子版恰好准备了电子版,想要的来领取吧。
这个部分有点难度,B站吴老师的机器学习可以作为参考。
[中英字幕]吴恩达机器学习系列课程_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com专栏内也收录了一些经典的算法:

  • 我要自学生信之数据挖掘:朴素贝叶斯
  • 我要自学生信之数据挖掘:范数、凸集、凸优化、梯度
  • 我要自学生信之数据挖掘:最优化条件
  • 机器学习算法实践-岭回归和LASSO
  • 支持向量机 SVM
  • 我要自学生信之数据挖掘:从SVD到PCA到LSA
  • 极大似然估计与最大后验概率估计
  • 人人都懂EM算法
  • 神经网络15分钟入门!足够通俗易懂了吧
7、批判性思维
重要性就不言而喻了,如果你面临一个事件或者一个项目提不出一个问题,或者思维混乱,那么你很难在这条路上走的很远。很多人可能觉得不甚重要,但要是按照重要性来排,我一定把它排在第二位。批判性思维的训练是需要长期进行的,是后天形成的。
推荐学习书籍:

8、好奇心+终身学习
多阅读相关领域顶刊的文章,持续下去,不出半年,定有所成,很多人都想一口气吃成个胖子,但学习往往不是一蹴而就的,树立终身学习的理念,站在巨人的肩膀上起点会高很多。

最后送给大家一句话:人要忠于年轻时候的梦想!
我在知乎学生信专栏、<a href="http://zhuanlan.zhihu.com/p/265349226" class="internal">我要自学生物信息学系列持续更新中,一起和众多初学者度过新手区。
online_member 发表于 2022-12-13 19:32:31 | 显示全部楼层
自己也是半路出家,之前学生物学,后来接触到生物信息学。突然觉得这就是我今后为之奋斗的目标,从开始的一知半解,到后来的格物致知,慢慢发现这真的是一门特有趣的学科。但是当时资料和教程五花八门,而且没有人指导自己学的比较费力。为了不让大家再走我之前自学生信时候踩过的坑,走过的弯路,将一些比较重要的入门书籍,网站和后续的学习渠道总结如下,供大家参考。
目录


  • 统计学
  • 系统操作
  • 编程语言
  • 生物学
  • 学习渠道
知乎圈子: 生物信息 (分享,学习和吐槽生物信息)
生物信息 - 知乎统计学


  • StatQuest
生物统计学视频,包含统计学基础和生信所涉及的统计学概念,作者力图用可视化并结合有意思的例子来让统计学菜鸟尽快熟悉内部原理。


如何自学生物信息学?668 / 作者:bmxphg274 / 帖子ID:95893

作者是国外的大神,所以他的教程是全英文,在YouTube上首发。后来国内的B站UP取得作者授权,将视频传到国内并配上了中文字幕,后边代码也是这个UP主上传的。
YouTube:https://www.youtube.com/playlist?list=PLblh5JKOoLUJo2Q6xK4tZElbIvAACEykp
B站网址:https://space.bilibili.com/257347536?from=search&seid=13661736885600696159
一部分R代码:https://pan.baidu.com/s/1GQXa0P0_vX_bHgrWVEmAYA 提取码:c2wk

  • 深入浅出统计学
用大量例子来讲解统计学的一些概念,如果不习惯英语视频,可以先用这本书来熟悉。


如何自学生物信息学?106 / 作者:bmxphg274 / 帖子ID:95893

系统操作


  • 鸟哥的Linux私房菜 基础学习篇
生信的大部分软件和分析流程都需要依靠服务器来做,因此避免不了Linux的使用。开始学习不用背全部命令,常用命令和参数输入多遍就会记住,如果对某个命令想深入学习,可以将这本书翻开看看。


如何自学生物信息学?64 / 作者:bmxphg274 / 帖子ID:95893


  • 鸟哥的Linux私房菜:服务器架设篇
如果今后不涉及数据库设计或其他运维工作,这本书可以不看,只做了解。


如何自学生物信息学?841 / 作者:bmxphg274 / 帖子ID:95893

编程语言


  • R语言实战
R语言是目前生信数据处理的主要编程语言,涵盖大量的包来处理不同的生信需求,因此对于R语言的学习必不可少。


如何自学生物信息学?356 / 作者:bmxphg274 / 帖子ID:95893


  • ggplot2:数据分析与图形艺术
某种意义上讲,R吸引人们使用它的重要原因就是这个包的存在。它提供了大量的可设置的可视化操作方式,几乎可以绘制出任何用户想绘制的图形。


如何自学生物信息学?882 / 作者:bmxphg274 / 帖子ID:95893

下面是利用ggplot2绘制的图形


如何自学生物信息学?336 / 作者:bmxphg274 / 帖子ID:95893


  • 廖雪峰 Python 教程
网站简洁大方,教程附带大量例子,可以使新手快速进入python的学习中。
网址:https://www.liaoxuefeng.com/wiki/1016959663602400


如何自学生物信息学?538 / 作者:bmxphg274 / 帖子ID:95893


  • Python基础教程
Python 同样逐步进入生信领域,包括Pandas,Matplotlib,Biopython等库都可以方便的执行生信分析任务。同样,也包含一些机器学习包,可以用于生物信息学的工作中。


如何自学生物信息学?54 / 作者:bmxphg274 / 帖子ID:95893


  • Biopython 包
一般生信分析脚本的工具集。包括核酸序列处理,NCBI,UniProt数据库操作等其他常用的生信工具。
中文教程:https://biopython-cn.readthedocs.io/zh_CN/latest
英文教程:http://biopython.org/DIST/docs/tutorial/Tutorial.html
GitHub:https://github.com/biopython/biopython

  • pandas 包
用于分析结构化数据的python包,包括对数据去空值,统计值计算,添加,删除,插入,修改,提取等等操作。由于底层基于C,所以可以处理大型文件而且具有很快的分析速度。
英文教程:https://pandas.pydata.org/pandas-docs/stable/getting_started/10min.html

  • Matplotlib 包
其实就是在python环境中的MATLAB (科学制图里大神级的软件),而且和它语法结构和用法大致相同。
相当于上边提到的ggplot2,只是一个运行与R环境一个是Python环境里的可视化工具包,这两款看个人喜好来学习一个,另一个了解就好。
英文教程:https://matplotlib.org/
生物学


  • 细胞生物学,翟中和
当年考试时候用的书,对涉及的细胞的知识做了全方位的解释。


如何自学生物信息学?355 / 作者:bmxphg274 / 帖子ID:95893


  • 分子生物学,朱玉贤
当年考试时候用的书,对这本书的理解,关系都后面对生信分析的理解。比如在数据分析中的基因组比对,转录本定量,单位点突变分析,测序里的接头,UMI,Barcode等等一些概念的理解。


如何自学生物信息学?913 / 作者:bmxphg274 / 帖子ID:95893


  • 基因X,Lewin
包含大量的文字和精美的配图来极致详尽的解释生物学过程,唯一的缺点就是太厚。


如何自学生物信息学?957 / 作者:bmxphg274 / 帖子ID:95893

学习渠道(单纯好用,不是广告)

生信菜鸟团:适合生信初学者,包括常用软件,格式,流程的教程,主要由文献推荐,帮助新手快速进入生信状态。
生信技能树:包含论坛和公众号,有高质量的推文,包括生信分析的方法,软件教程,生信会议信息,还有彩蛋和吐槽推文。
生信人:有生信文献的推文,研究方法的教程
宏基因组:主要发微生物方面的推文,也包含生信分析的教程
CSDN:https://blog.csdn.net/u011262253
简书:https://www.jianshu.com/u/edebc0f5f8ba
知乎专栏:https://zhuanlan.zhihu.com/c_187707704
<hr/>更新中...
online_member 发表于 2022-12-13 19:32:51 | 显示全部楼层
谢谢邀请!
其实这个问题一直想回答,但是很多时候打开又不知道要说什么。静了静心,仔细回忆起自己学习生信这7年的时间,走过的路,踩过的坑,有一些感慨,今天也分享给大家,全当给大家提供一些经验~
1. 在正式回答之前,我们需要回答一个问题,你想自学生物信息学到什么程度?

在我目前的认知中,我把生物信息学的学习分成4个层次,不同的层次,学习到不同的程度时间,经历,和对资质的要求当然是不同的。
第1层,从小白入门到能够做一名生物信息学技术员,大概1年左右的时间就够了。成为技术员的要求大概是,对于成熟的生物信息学流程要能用,会用;要能够处理流程出现的各种bug;会写一些小的脚本。只要大家肯花时间,肯用心,都能够达到这个level。
第2层,从一名生物信息学技术员成长成这个领域的小专家,大概需要再耗费2~3年左右的时间。我觉得,对于这个层次的要求,应该是在能够解决日常的问题的基础上,重点突出自主推动和承担课题或者项目的能力。大概相当于优秀的研究生,或者是高年级的博士生。
第3层,从某一个领域小专家成长为专精的小牛,这大概还需要在某个具体的领域再深耕2~3年。到这个层次,已经是一个公司的技术扛把子,也有可能是某些学校的青年PI。
第4层,从小牛成长为能够引领潮流,开创领域的,指导学科发展的大牛。除了资源,时间,努力以外,还需要天资。

如何自学生物信息学?183 / 作者:宋长宁 / 帖子ID:95893
所以,我们要把生信到什么样子呢?这个问题,只要你自己知道。
2. 生物信息学的理解

下面我们简单聊聊什么是生物信息学。其实,我认为,生物信息学最简单的定义就是用信息的手段去研究生物问题的学科——信息是手段,生物问题是核心。千万不要搞错问题,不要太过执着追求于某一个信息技术的细节,而是应该把重点放到解决生物问题上。
已故的统计物理学家郝柏林院士曾经在生物信息学领域做出过非常突出的贡献,他也是我们国家第一代生信人。郝院士对生物信息学有4句话,我在这里分享给大家。

如何自学生物信息学?96 / 作者:宋长宁 / 帖子ID:95893
也是因为“生物是物,生物有理,生物有数,生物有形”我们才能够用统计学,信息学的办法去研究生物问题。

如何自学生物信息学?810 / 作者:宋长宁 / 帖子ID:95893
所以,再次强调,生物信息学是我们手里的锤子,生物问题是我们周围的钉子,我们要做的就是用锤子去钉钉子。而入门生物信息学,学习生物信息学就可以分成两个层面来进行,一方面要把我们的锤子炼硬(信息技术),另一方面要锻炼找钉子的能力(科学思维训练)。
3. 生物信息学要解决的问题 (2019-10-04更新)

现在我们可以讨论一下,生物信息学都要解决哪些问题了。
从传统的生物信息学来说,那个时候的生物信息学,主要还是低通量的解决一些重要的问题,构建一些基础算法,在低通量的水平挖掘一些序列中有价值的信息,比如寻找蛋白的序列的功能结构域,寻找一些DNA序列中的motif等等。
但是自从2006年Illumina公司正式发布了第二代测仪以后,这一切都发生了变化,生物数据的数据量成几何倍数在进行增长,生物信息学也第1次面临了高通量这个挑战。(当然,真正成熟应用的二代测序仪要等到2008年左右。)

如何自学生物信息学?854 / 作者:宋长宁 / 帖子ID:95893
上图横轴是年份,纵轴是与人类相关的基因组数据积累量,蓝色虚线代表摩尔定律,即每18个月整体数据量翻一番;而真实的生物数据是红色的虚线,也就是每7个月生物数据的数据量就要整体翻一番。
这有多可怕呢,我可以换一种说法:从今年1月份到今年7月份这7个月新产生的生物数据的数据量,等于之前产生的所有生物数据。
那么,也就基于此,当前生物信息学最主要的问题,全部都是围绕测序数据展开的。
所以,如果硬要给现在的生物信息学主要解决的问题分分类,大概可以分成下面几个方向:

  • 开发、改进新的算法(如改进比对算法);
  • 针对某种特定的问题,发开好用的流程与工具(如ChIP-Seq有各种分析注释的工具);
  • 开发、改进新的数据库(如开发自己领域内有价值的数据库,可以发到NAR特刊哟~);
  • 深度挖掘现有的公共数据(如挖掘TCGA,GTEx等公共数据);
  • 定制分析数据并设计生物学实验(如很多干湿结合的实验室);
  • 新技术催生的系列分析(如单细胞,宏基因组,三维基因组…… )
  • 利用数学建模或者物理模型解决生物问题(其实更偏系统生物学);
所以,结合要解决的问题和我们想要达到的level才知道我们的终点在哪里,也才知道我们一些东西,我们在入门的时候要不要重点考虑。
比如,很多临床医生朋友,就是想画个炫一点的图,那研究半天背后的统计原理就不是一个性价比很高的入门策略。再比如,想做独立成长为可以独当一面的生物信息学分析专家,那么很多时候,一些比较重要的算法和统计学知识是不可或缺的。
也许,我们的目标不同,终点不同,但是我还是希望能够按照下面的分类给出一些几乎是做生信必须要会的内容,供大家参考。
4. 生物信息学入门的6个方面

4.1 从Windows到Linux
无论以后是做偏算法的计算生物学(computation biology),还是做生物数据的挖掘(biological data mining)工作,基本上都是在Linux平台或类Unix平台(MacOS)下完成计算与分析的。一个比较重要的原因是,Linux或者类Unix平台(下面用Linux代指)下有非常完善的开源体系,基本上所有的生物信息学软件在设计之初都首先考虑Linux平台。
因此,学习使用Linux可以说是生物信息学入门的第0课,是最最基础的内容。说到这里,很多老铁可能会有畏难情绪了,会问:Linux是不是很难学习啊?我看Linux都是命令行,会不会特别麻烦?
我的看法是,如果你能够熟练使用Windows系统,对文件进行复制, 粘贴,移动,重命名,压缩,解压缩那么你就完全没问题。因为在Windows里,上述操作只不过是变成了鼠标的操作,Linux也仅仅是把鼠标操作变成命令行操作,没有任何任务内容上的不同,仅仅是鼠标点图形界面与命令行操作的不同。
那么,还有的老铁会说:“我看大家推荐的《鸟哥的Linux私房菜》是一本很厚的书,Linux是不是需要学的内容特别多?”
对于这个问题,我的回答是:相信我,如果你去找一本详细介绍Windows的书,一定比《鸟哥的Linux私房菜》要厚得多。Linux操作系统确实是博大精深,但是我们既然是入门,能够上手使用是第一要务,领会精神,把握重点才是首要的事情。
而关于资料的推荐,推荐10本资料等于没有推荐,因为没有重点。
在这里,我推荐1份10页左右的资料,1份动手操作的课程,1本参考书。
首先是1份资料,就像我们平时用Windows电脑,也不会去用到Windows的所有功能,我们用Linux做生物信息学分析也是一样的,平常能够用到的Linux命令也就不超过30个,北京大学生物信息学中心的创始人之一罗静初老师在自己的网站上总结过一份资料,这份资料包括小部分的内容,分别是《Linux十大常用命令》《Unix十大实用命令》《Unix十大高级命令》,能够熟练掌握这30个命令,你做生物信息学的Linux部分基本问题不大了。
然后是1个动手课程,我非常推荐实验楼的动手课程,里面的Linux入门是免费课程,基本上能够交互式的完成相关的内容。省去了小白自己装Linux系统的麻烦。
最后是一本参考书级别的《鸟哥的Linux私房菜》,私房菜是Linux领域的经典,但是里面的内容繁多,不太适合简明扼要的学习,而适合当做系统学习,或者是学习之余的参考资料。因此,我建议大家把这本书当做一个参考书,不会了好好读读相关章节就行。

如何自学生物信息学?964 / 作者:宋长宁 / 帖子ID:95893
这个部分提到的课程网址如下,另外资料也放到了对应的baidu盘,大家取需。
实验楼Linux入门课程地址: Linux 基础入门(新版)_Linux - 实验楼
链接: https://pan.baidu.com/s/1Vcv3h9olITXpDF1gl2YIWQ  提取码: h8tg
如果很想买纸质版,我推荐第3版比较便宜;第4版比较贵,但是内容新,购买链接。
鸟哥的Linux私房菜(第3版)4.2 电脑推荐
目前来说,生物信息学主要是和高通量测序数据打交道,大量运算的任务基本上是交给服务器来进行,但是运算完以后的结果需要进行统计,绘图,整理,这个过程一般是在本地进行。考虑到实际使用情况和便捷情况,目前主流的有两个选择,1个是选择苹果系统(MacOS),一个是选择Windows系统。
就我个人的使用习惯,我觉得MacOS(苹果操作系统)非常适合做生物信息学,一方面是能够与Linux的命令行保持一致,另一方面能够有非常多的常用软件支持。要知道目前Linux下是没有QQ,Microsoft Office等常用软件的,但是在Mac下这个完全不是问题。
当然,Mac也是有缺点的,缺点就是贵。而且如果要想把Mac当主力机器使用,需要至少16~32GB的运行内存,就这个配置的苹果电脑基本上都是1W大几千以上了。所以,如果“穷且志坚”可以试试黑苹果。黑苹果的意思是,自己组装和挑选配置,最后安装MacOS的操作系统,实现和正版苹果电脑一样的功能。基本上用过黑苹果的同学,都不会再换回到Windows平台下做生物信息学。
如果,非要用Windows去做生物信息,当做主力机器,也不是不可以。只不过有一些配套的软件可能和服务器衔接的不够好。
无论是选择Windows还是Mac,亦或是黑苹果我都推荐如下的配置;
CPU:i7-8700 、i7-9700
内存:16GB以上,32GB或者64GB更好
固态硬盘:最好是NVMe接口,250GB以上,用于安装操作系统及快速读取数据
机械硬盘:普通机械硬盘即可,容量4TB以上
显卡:根据自己的实力选择即可,如果后期需要做机器学习和深度学习,可能需要好一点的显卡。我在这里打一个小广告
如果大家想买黑苹果,可以私信联系我,我和一位淘宝金牌卖家共同为大家定制了适合做生物信息学的黑苹果配置,价格从5000到1W+都有。同时,如果大家在这家店购买了黑苹果,我会送上我自己的系统配置,省去了很多新手配置的麻烦。

4.3 学一门编程语言
学习生信,永远都跳不过学习编程这个问题。
关于这个问题,我给出一个比较中肯的意见:如果你的实验室师兄师姐都在用一门编程语言,你就跟他们保持一致,这样代码使用起来比较方便,更有利于你自己的学习氛围。
目前,在生信中应用比较多的编程语言除了啥都能干的C++和Java以外,做字符串处理非常方便的就是Python和Perl。如果你做的工作对运算速度没有特别极致的要求,亦或者是不会去开发非常大型的软件,而你又没有什么编程基础,那么你可以首先就排除C++和Java了。
至于Perl和Python的选择,我个人还是倾向于Python,虽然有的时候用Perl会有更简洁的代码。但Python的工具包非常多,也有非常完善的教程,入门起来和很方便。更关键的是,现在做生信,多多少少都会用点机器学习的东西,Python做机器学习几乎都是首选语言了。
关于Python的教程,我比较推荐 <a class="member_mention" href="http://www.zhihu.com/people/c32ad3f421f57eaa80782e51ec6a5bde" data-hash="c32ad3f421f57eaa80782e51ec6a5bde" data-hovercard="p$b$c32ad3f421f57eaa80782e51ec6a5bde">@廖雪峰 老师的教程,简明扼要地把知识的主干都理清楚了。能够让你快速地抓住Python这门语言的特点,极力推荐。
另外,如果你非要想买一本书来学习Python的话,我推荐《跟老齐学Python》,这本书语言比较风趣,像是在与你做对话。
廖雪峰老师的Python教程链接:  廖雪峰Python教程
跟老齐学Python的网络版链接:《跟老齐学Python》gitbook版 · GitBook (Legacy)
某宝链接(欢迎下单哟~)
跟老齐学Python
如何自学生物信息学?141 / 作者:宋长宁 / 帖子ID:95893
当然,如果你还是想看一个语音教程的话,也可以试试我的知乎live,里面除了一些基础编程内容外,还从生信的角度挑选了几个问题,带着大家一起编程。
学习Python,做生信
4.4 R语言与统计知识
我没有把R语言放到4.3这个章节,主要是觉得如果把R语言算做一门非常严谨的编程语言,有点不大合适。在我这么长时间的使用过程中,我更习惯把R语言当做一门统计语言来对待,这门语言就真的是为统计而生的,而学生信必然要学统计。因此,统计,R语言我们都要面对。
先说说统计。很多朋友,一提到数学就头大,好像从小到大一直在被数学虐。但其实,我觉得还是要放轻松,因为生物信息学里面比较初步的一些统计知识,还是比较好懂的。如果大学里学过《概率论和数理统计》这么课,就太好不过了。基本上这门课就涵盖了我们生信入门需要的绝大多数的统计知识。
那为什么,很多时候即便是本科学习过这门课,真的在使用统计学处理生物信息学问题的时候还是觉得力不从心呢?最主要的原因是本科更强调按照教学大纲去教授你几乎所有的知识点,但是没有根据生物信息学的实际需要进行扩充和增减。
比如,生信里比较重要的分布是Poisson分布,在《概统》这么课你可能只会在概率论部分的离散部分中知道有这么个分布。但是在生信中,如何用Poisson分布去检测富集信号,怎么去call peak就不甚了解了。
再比如,你在概统里肯定学习过t检验(t-test),但是你拿到数据的时候你直接就用t-test可能就会得到与事实相反的结果。这是因为,在教学的时候不会强调t-test的适用条件,即数据分布服从正态分布且方差相等。但是真实数据,很多时候你不进行log2处理就不会服从正态分布,或者是方差就是不相等,这个时候你又需要怎么办呢?这个时候,你可能需要做一定的数据变换,也有可能需要做Wilcox秩和检验,从而代替t-test。
上面我举的两个例子都还是非常典型的,那么怎么解决这个问题呢?我的建议是,对自己的统计知识进行回炉重造,如果想要扎扎实实地学好统计学,那么我还是非常建议你去跟一门MOOC课程,比如浙江大学的《概率论和数理统计》的MOOC就非常不错。此外,我还建议去看一本《医学统计学》,因为《医学统计学》更加偏重实际应用,能够用最简单的语言给你讲清楚概念,同时弱化公式推导,一切以应用为导向。等你在实际的项目中,能够熟练,正确地应用这些知识以后,再学习那些理论,公式的推导你会有豁然开朗的感觉。
当然,我自己开了一门统计入门课,里面主要介绍了2个内容,1个是做生信统计学到底怎么学,另一方面是把生信中最常见的若干种统计问题全部给大家讲清楚,有兴趣的老铁可以支持一下我的课程。
生物信息学入门课:学习生信你需要了解的统计学 第1讲然后我再谈谈R语言。我每一年在R里至少下写下5W~10W行以上的代码,就我的经验来说,R语言的学习一定要按照下面的这个步骤:
基础知识 -> 实际应用 -> 进阶知识 -> 实际应用 ... ...这个就是我反复跟大家强调的,R语言其实是一门非常偏应用的工具,你一定要实际把它用起来。一味地强调基础理论的学习,到最后你还是什么都不会。一定要在稍微学习一点知识以后,学着照葫芦画瓢,先把R语言用上,画点好看的图再说。
那么,针对R语言的学习很多人推荐《R语言入门》或者是英文名《R For Beginners》我不是很推荐。我推荐另外1本书,然后再推荐我的1个知乎Live,这本书呢就是《R语言编程艺术》,这本书从入门到精通可以一直陪着你。在最初入门的时候,只需要看前9章的内容(全书的一半都不到)。某宝,某东的书籍链接:
R语言编程艺术
如何自学生物信息学?411 / 作者:宋长宁 / 帖子ID:95893
我的知乎Live主要为大家介绍R的基础语言结构,并带领大家学习常用图的绘制(boxplot,histogram,heatmap,scatter plot等等),还为大家介绍了R的基础绘图系统,里面有我的视频教程,一行一行带着大家去学习。
R入门与基础绘图系统
4.5 生物学与生物信息学基础
我在上述内容中,一直在不断强调,生物信息学其最核心的内核还是去解决生物的问题。因此,想要学习生物信息学,并能够进一步推动课题的进展,就需要理解生命过程。那么生物学相关最核心的课程其实就2门,一门名曰《细胞生物学》,另一门名曰《分子生物学》,这两门课在国外的很多课程里都是揉在一起讲的。
我特别推荐的是MIT教授Eric Lander老爷子讲的生物学基础,非常值得一看。如果你之前的生物水平还停留在高中,那么看完这个视频之后,你就对目前生物学的基础概念有了一个比较清楚的认识。
[MIT] 生物基础 (双语字幕) Fundamentals of Biology_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili
4.6 重复1篇领域内的经典论文paper
写到这里,你也看到了这里。如果说上面的内容都是把生信拆解成各个部分,让你分头击破,那么这里我们需要做的就是生物信息学入门的最后一个部分——把之前的学习内容都综合应用一遍。
具体说来,在我眼里什么叫做真的可以做生物信息学入门了呢?
就是1个标准,选择一篇你所关注的研究领域,选择一篇比较重要的文章,最好是和你以后的研究用类似的研究方法的文章。把文章读懂,再把文章的数据下载下来,重复出文章的主要结论,并模仿文章的figure把每一个主要的figure都绘制出来。
文章读懂的含义是,能够理解文章的行文逻辑,实验设计,以及文章可能存在的不足,要思考为什么这篇文章能够发表,并能够获得大家广泛的关注;
重复文章的结论的含义是,不要求100%能够算出和文章完全一致的结果,比如文章的计算结果是上调50%,你算出上调55%或者上调45%就好,只要主要结论保持一致就行,这基本证明了你对文章数据分析的理解是没有错误的。
重复文章figure的意义是,你只有真的把数据绘制出figure来,你才能够真的体会到,从数据的产生,到数据的收集,再到数据的挖掘,分析,整理,最后再把数据以图表的方式展示出来的完整过程是怎么样的。
只要你能把这个问题解决,那么你就可以非常骄傲地说:你已经生物信息学入门了,不再是生物信息学的小白了。
出了生信的“新手村”,外面的世界会更精彩!
老铁,祝你好运!
经典文献推荐(待续...)
<hr/>最后,希望大家多多支持我们的生物信息学入门知乎Live,无论是购买哪一场生信入门知乎Live,都可以加入我们的讨论群。目前讨论群人数已经超过2500人,会定期推送经典文献,分享经典代码,群上限3000,人满就不再加人咯!

购买其中任意1次生物信息学知乎Live都可以加入到我们的生物信息学交流群!
注意!入群的时候需要提交1个申请信息,申请信息的内容在每次生信知乎Live的最最下面!

生物信息学入门系列知乎LiveP.S. 平时生信交流群的讨论截图

如何自学生物信息学?656 / 作者:宋长宁 / 帖子ID:95893
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

UFO中文网

GMT+8, 2024-5-17 11:38

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表