作者:刘峻宇
前言
水产动物选择育种,简单来说,就是挑选出育种目标性状最优的个体,制定合理的配种方案,然后生产出经济性状优良的后代群体,最后赚了一个亿,赢娶白富美走向人生巅峰的一门学科。我也是怀揣着这样一个梦想,选择了这条道路,我想各位也是。梦想一定要有的,万一实现了呢?
自己真正接触虾类遗传育种也才一年的时间,初踏入这个领域,我一知半解甚至只是略懂皮毛的地方太多了。这是一门交叉学科,需要我们了解的知识面很多,例如生物统计学,遗传学,育种学,分子生物学,计算机语言等,而且需要我们时刻的补充甚至更新自己的知识库。在这里分享并且总结一下自己的经验,应该如何快速了解和入门这个领域,尽量少走弯路,到所里能尽快上手所分配的工作。
下面结合实际数据分析流程,介绍一些学习的资料,结合自己的方向,可以有选择性的阅读。
首先墙裂推荐这个博客,栾生老师的博客 ,很多知识点讲解的很明白,且遇到不懂的问题容易联系作者。还有邓飞的博客 ,有很多统计分析方法和工具,数量遗传学和基因组选择等内容。
1、理论学习与专业应用
通常我们得到的数据中,包括个体的编号,父母本编号,家系类型,测试池类别,世代,性别,日龄,体重等记录信息,你可能会想,直接记录体重等表型就好了,为什么还要记录这些?
举个例子,在一组数据中,我们想比较雌雄虾的体重差异,利用数据直接作图如下:
从图一中你可以看到雌雄之间的体重差异还是挺大的。但这是它们的真实差别吗?再做一个不同测试池对应的体重差异箱线图,如下图所示:
可以看到,不同测试池也对虾的体重有影响,那说明如果单纯的利用数据中的体重,是有误差不准确的,如果想知道真实的雌雄虾体重的差异,需要排除测试池等因素的影响。所以接下来,会用到线性模型的理论知识,《Linear Models for the prediction of Animal Breeding Values》 (第三版)非常经典,强烈推荐!或栾老师博客中也有详细介绍。
有时候需要看两组数据是不是存在显著性差异或者我们在确定模型之前,需要对模型中的每一个效应进行显著性检验,这时候需要生物统计学的知识,可以看杜荣骞老师的《生物统计学》(第四版);
动植物遗传选择育种方面的经典书籍:
- 有一本讲的很全面,《Genetic data analysis for plant and animal breeding》-Springer (2017),是结合ASReml-win来讲的,有线性模型,多性状模型,方差组分,育种值,以及基因组育种等的介绍;
- 在水产育种方面,《Selective breeding program in Aquaculture》是一本非常经典的书,一定要看!!!;
- 在家畜动物育种方面,张沅的 《家畜育种学(第二版)》不可不读。
- 张勤教授的《动物遗传育种中的计算方法》, 里面有详细的介绍遗传评估的计算过程,更能加深理解。我们做遗传评估计算过程主要是分两步,首先用 REML(约束最大似然法)的方法,根据表型和亲缘关系估算出方差组分,然后再利用BLUP(最佳线性无偏预测)或GBLUP的方法估计育种值,遗传力,遗传进展等。在这里我想先明确一个核心概念,育种值(breeding values)。因为我在一开始的时候对这个概念很模糊,所以在这里我试着看能不能以一个简单的方式解释一下。
个体育种值是没有办法实际测量的,能测量到的数据是包含育种值在内的遗传效应和环境效应共同作用得到的实际表型数据,例如收获体重、体长等,只能通过统计学的方法,结合表型数据和个体之间的亲缘关系(可由系谱或分子标记技术得到)对育种值进行估计。动物经济性状一般来说都属于数量性状,根据数量遗传理论,数量性状在遗传上受多个微效基因的控制,各个基因的效应是可加的,所有基因效应的累加值称为育种值。遗传效应分为三种,加性遗传效应,上位效应和显性效应,但是后两项在遗传给后代时,由于基因的分离和重组,这两部分一般不能确定遗传,是不能被固定的效应,只有加性遗传效应,是可以稳定遗传下去的。在实际生产中,育种值是我们挑选种虾的主要依据。我们获得所有虾的收获表型数据进行遗传评估后,每个个体的育种值会被估算出来,接下来对所有个体的育种值进行排名,选择育种值排名较高的个体作为种虾的候选群体,接下来为配种方案做准备。
2、常用工具
目前我们做数据分析的主要工具是R(RStudio)语言,这是一个开源平台,区别于像SPSS,ORIGIN等点击式软件,R需要自己编写代码来运行得到你所想要的结果,它的优势就在于灵活,没有局限性,功能丰富全面等。所以,需要有编程基础,可以先初步学习一些基本操作语句,这本书应该能帮到你:《R语言实战》。此外,R中有全面的作图功能,可以做出各式各样的好看好玩的图片,R语言实战中也有介绍,但是如果有兴趣可以学习这本书:《ggplot2:数据分析及图形艺术》。有一定基础和精力还可以选择学习Python。
有一些常用的R包推荐,data.table 是data.frame包的扩展,为R语言提供了快速整合和处理大型数据的能力,也能快速的读入大数据,详细内容和用法可以参考这篇博客:data.table。dplyr包,也是一个处理数据的包,能筛选,分割,整合等,还有很有特色的管道符功能,详细请看: dplyr 。遗传评估的相关包有,ASReml,sommer等,可以拟合线性混合模型估算遗传参数。 另外如果涉及基因组选择,需要处理SNP数据,还会用到PLINK软件进行数据筛选,BLUPF90进行H矩阵的构建等,我这边有一些基因组选择的相关R代码,我们可以一起讨论。
上面的一些书在学术讨论小组群文件里是有的,可以根据自己的方向和兴趣选择性阅读。最好自己有一个像博客、简书、印象笔记之类的能够记录的地方,在这里能不定期总结归纳新知识、下一步的计划等。