实验材料

构建的群体,或自然群体,如各地方品种。

RAD文库构建

提取DNA后,构建文库,简要步骤如下:

① 限制性内切酶TaqI酶切;

② 连接P1接头;

③ DNA随机打断片断化;

④ 目的片段回收与末端修复;

⑤ 连接P2接头;

⑥ RAD片段富集;

⑦ 上机测序。

参考:Rapid and cost-effective polymorphism identification and genotyping using restriction site associated DNA (RAD) markers

测序reads过滤

根据识别标签序列得到每个个体的测序reads,使用trimmomatic进行过滤(其他质控软件,如fastqc,multiQC等)

设置过滤参数为:SLIDINGWINDOW:5:20 LEADING:5 TRAILING:5 MINLEN:50。 过滤标准:两端质量低于5的碱基进行切除,并以5bp为窗口进行滑动过滤,对平均质量低于20的窗口进行切除。

比对和变异检测

BWA (其他比对软件如bowtie2/soap2/MAQ等)将过滤后的个体clean reads比对到参考基因组序列上。样本比对率反映的是样本测序数据与参考基因组的相似性,覆盖深度和覆盖度能够直接反映测序数据的均一性与参考序列的同源性。

使用GATK(或samtools+bcftools)Haplotype Caller模块进行变异检测,获得群体变异集文件(VCF 格式)。对变异进行过滤:过滤参数为缺失率小于或等于0.2、杂合率小于或等于0.2、最小等位基因频率(MAF) 大于或等于0.05,最终得到高质量的基因型数据。

聚类分析

群体分析三幅图:群体结构图(祖先成分堆叠图)、PCA、系统发生树。

在获得高质量的标记数据以后,利用vcftools将vcf文件处理得到plink.ped和plink.map文件(整理为plink软件所需格式)。

使用plink 软件随机选择连锁不平衡(LD)小于0.1,且相邻间隔在300kb以上的SNP位点,最后得到一个包含3420 个SNP位点的标记集,一般是生成.bed文件。

1.祖先成分堆叠图

使用ADMIXTURE对此 SNP位点集(bed文件)进行群体结构分析(Structure),利用交叉验证过程确定确定合适的祖先数或亚群(K值)。若不知道理想的K值,可用ADMIXTURE计算,一般当cross-validation error值最低时所对应的K值为最合适的K值。

考虑到样本所归属的分类单元,即看看哪几个物种聚在一起,对合适的K值利用Structure软件(速度慢,其他软件如frappe,ADMIXTURE也可做群体结构图,并且很快)聚类图,一些R包如hapmap也是可以做群体结构图的。

2.PCA

利用GCTA对SNP数据集进行样本的PCA分析(其他软件如EIGENSOFT中的smartpca)。GCTA可以直接读取.bed , .bim , .fam文件,利用–make-grm 生成个体对之间的遗传关系矩阵,并将GRM的下三角元素保存为二进制文件.grm.id , .grm.bin , .grm.N.bin。使用 –pca 设置要生成主成分的数目,一般来说就可以刻画出群体结构。这一步会生成 .eigenval 和 .eigenvec 两个文件。.eigenval文件为各主成分可解释遗传信息的比例,.eigenvec文件为每个样本在top4主成分上的分解值。

3.系统发育树

构树的方法有非加权分组平均法(UPGMA,已经很少用)、最小进化法(ME)、邻接法(NJ)、最大简约法(MP)、最大似然法(ML)等。

构树软件如FastTree/MEGA/cluster X/phylip,美化可以用FigTree/ggtree/treeview/GraPhIAn。

NJ法是基于最小进化原理经常被使用的一种算法,它不检验所有可能的拓扑结构,能同时给出拓扑结构和分支长度。

GWAS的群体遗传分析也是包含这三个图,RADseq毕竟是简化基因组,得到的SNP有限,做这种群体分析效果肯定没有GWAS好。

Ref:Admixture:一款快速分析群体遗传结构的软件

群体结构分析三种常用方法(下篇)

群体结构分析三种常用方法 (上篇)

基于RAD高通量测序探讨中国85种杜鹃花属植物的分类

http://www.360doc.com/content/17/1120/01/33459258_705424795.shtml

重测序(RADseq)做群体遗传分析套路的更多相关文章

  1. 【转】群体研究套路:开心果denovo+重测序+转录组+群体进化+选择位点

    转自公众号Eric生信小班.学习群体遗传套路 中科院昆明动物园吴东东研究团队联合国外研究团队2019年在Genome Biology发表题为Whole genomes and transcriptom ...

  2. 【豆科基因组】木豆Pigeonpea (Cajanus cajan) 292个自然群体重测序2017NG

    目录 一.来源 二.结果 一.来源 Whole-genome resequencing of 292 pigeonpea accessions identifies genomic regions a ...

  3. 【豆科基因组】普通豆/菜豆/四季豆Common bean (Phaseolus vulgaris L.) 683个自然群体重测序2020NG

    目录 一.来源 二.结果 683份材料重测序 地方种landraces和育种品系breeding lines的多样性 表型和基因-环境互作(G by E) 菜豆产量潜力相关的MTAs(显著关联位点) ...

  4. 【豆科基因组】鹰嘴豆Chickpea (Cicer arietinum L.)429个自然群体重测序2019NG

    目录 一.来源 二.结果 材料测序.变异检测.群体结构和LD衰减 驯化后经历选择的候选基因组区域 起源中心.迁移路线和多样性 GWAS 一.来源 Resequencing of 429 chickpe ...

  5. 【转】NG:垂枝桦基因组图谱构建(2+3组装)及重测序分析

    转自希望组公众号.学习二代+三代组装策略的流程 垂枝桦(Betula pendula)是一种速生乔木,能在短短一年时间内开花,木质坚实,可做细工.家具等,经济价值极高.近日,芬兰研究人员对垂枝桦自交系 ...

  6. 全基因组测序 从头测序(de novo sequencing) 重测序(re-sequencing)

    全基因组测序 全基因组测序分为从头测序(de novo sequencing)和重测序(re-sequencing). 从头测序(de novo)不需要任何参考基因组信息即可对某个物种的基因组进行测序 ...

  7. 植物基因组|注释版本问题|重测序vs泛基因组

    生命组学: 细菌和其他物种比,容易发生基因漂移,duplication和重排. 泛基因组学研究的一般思路是通过comparison找到特殊基因区域orspecific gene,研究其调控机制(即通过 ...

  8. 从PMP培训归来,跟大家聊聊做项目的套路

    管理也是一些套路的传承,很多人说不去学专门的管理,照样把工作做得很好.是的,不是散打乱打就不能赢,只是会吃点亏而已.如果你有了套路在心中,那么必定会让自己车到山前开路,让事情更好办. 所以,我去学了几 ...

  9. De novo 测序基础知识

    名词解释 De novo:拉丁文,从头开始的意思,de nove测序则是指在不需要任何参考序列的情况下对某一物种进行基因组测序,然后将测得的序列进行拼接.组装,从而绘制该物种的全基因组序列图谱. 重测 ...

随机推荐

  1. js--数组的 fill() 填充方法详解

    前言 我们知道了很多了初始化数组的方法,但是初始化数组之后,数组中的每一项元素默认为 empty 空位占位,如何对数组这些空位添加默认的元素,ES6提供了 fill() 方法实现这一操作.本文总结数组 ...

  2. 深入理解xLua基于IL代码注入的热更新原理

    目前大部分手游都会采用热更新来解决应用商店审核周期长,无法满足快节奏迭代的问题.另外热更新能够有效降低版本升级所需的资源大小,节省玩家的时间和流量,这也使其成为移动游戏的主流更新方式之一. 热更新可以 ...

  3. Python课程笔记(七)

    今天学习神奇的海龟,非常有意思,还有很多图片想去绘制,分享一个turtle绘图网站: https://www.python123.io/index/turtles/latest , 要是可以分享出源码 ...

  4. VirtualBox Share Folder

    转载:https://www.cnblogs.com/Dennis-mi/articles/5896586.html 使用virtualbox最方便的host-guest交换文件方案莫过于共享文件夹功 ...

  5. java随手记 面向对象

    // 可以把两个类放在同一个文件中,但文件中只能有一个类是公共类,且公共类必须与文件同名,即xxx.java,源代码中的每个类编译成class文件 // java库中的类 // java.util.* ...

  6. k8s入坑之路(7)kubernetes设计精髓List/Watch机制和Informer模块详解

    1.list-watch是什么 List-watch 是 K8S 统一的异步消息处理机制,保证了消息的实时性,可靠性,顺序性,性能等等,为声明式风格的API 奠定了良好的基础,它是优雅的通信方式,是 ...

  7. loadRunner12 设置关联 获取服务端动态数据

    关联:服务器返回给客户端一些动态变化的值,客户端用这些值去访问服务器,不能把这些值写死在脚本里面,而应该存放在一个变量里面. 在脚本回放过程中,客户端发出请求,通过关联函数所定义的左右边界值(也就是关 ...

  8. loadRunner运行场景时,事务数为0或是只显示添加的事务的数

    脚本编辑好后,不要着急到controller去执行,注意查看Run-time Settings(运行是设置)-->General(常规)-->Miscellaneous(其他)中查看Aut ...

  9. Java使用assert断言

    Java1.4后新增assert关键字 Idea中开启assert断言 使用 assert boolean表达式 assert boolean表达式 : 错误提示信息 例子 public static ...

  10. Are we ready for learned cardinality estimation?

    Are we ready for learned Cardinality Estimation 摘要 文章包括三大部分: 对于一个静态的数据库,本文将五种基于学习的基数估计方法与九中传统的基数估计方法 ...