(1)FSTF_{ST}FST​是什么?含义是什么?

FSTF_{ST}FST​,全称为fixation index,是一种用于衡量群体间分化程度的统计检验量(由Wright’s F-statistics衍生而来)。 一般从SNP或microsatellites数据计算得到,且一般用在群体遗传学分析中。

microsatellites,即微卫星序列,是在一种串列重复序列 —— https://en.wikipedia.org/wiki/Microsatellite
但是现在WGS和RAD-Seq都已经非常普遍了,使用的是否还多我也不了解,就略了~

(2)FSTF_{ST}FST​如何计算?

示例:FSTF_{ST}FST​计算原理

AA Aa aa
Pop1 125 250 125
Pop2 50 30 20
Pop3 100 500 400
1、统计每一个群体的等位基因数量

每一个Pop对应的基因型(genotype | genotyped individuals)数量为:

  • 500

  • 100

  • 1000

每一个Pop的等位基因数量(the number of allele)为:

  • 1000

  • 200

  • 2000

这边是biallelic类型(A or a),因此等位基因数量为基因型数量的2倍。

2、计算每一个群体实际的等位基因频率

Pop1中,

  • A allele实际的频率为125∗2+250∗11000\frac{125*2 + 250*1}{1000}1000125∗2+250∗1​,即0.5

  • a allele实际的频率为 1- 0.5 = 0.5

Pop2中,

  • A allele实际的频率为2∗50+30∗1200\frac{2*50 + 30*1}{200}2002∗50+30∗1​,即0.65

  • a allele实际的频率为 1- 0.65 = 0.35

Pop3中,

  • A allele的频率为100∗2+5002000\frac{100*2 + 500}{2000}2000100∗2+500​,即0.35

  • a allele的频率为 1- 0.35 = 0.65

3、计算每一个群体期望的基因型数量 & 差值

【标注】期望,即服从HD平衡理论,可以看看北京大学生物演化课程

Pop1中,

  • AA genotype期望的频率为125

  • Aa genotype期望的频率为250

  • aa genotype期望的频率为125

因此,Pop1中对应的基因型数量均无偏差。

Pop2中,

  • AA genotype期望的频率为42.25

  • Aa genotype期望的频率为45.5

  • aa genotype期望的频率为12.25

对应基因型数量的差值为+7.25, -15.5, +7.75。

Pop3中,

  • AA genotype期望的频率为122.5

  • Aa genotype期望的频率为455

  • aa genotype期望的频率为422.5

对应基因型数量的差值为-22.5, +45, -22.5。

对计算结果的理解,Pop1与计算得到的期望数值一样,服从HD平衡;Pop2实际纯合基因型数目与期望纯合基因型数目差值为正,表明存在inbreeding(近亲繁殖)事件;Pop3实际纯合基因型数目与期望纯合基因型数目差值为负,表明存在outbred事件,即亚群之间的isolation(生殖隔离)被打破,导致亚群之间能够产生后代。

4、统计每一个群体实际的杂合基因型占比

Pop1为0.5,Pop2为0.3,Pop3为0.5

【公式标注】Hobs=杂合基因型数目总个体数H_{obs} = \frac{杂合基因型数目}{总个体数}Hobs​=总个体数杂合基因型数目​

5、计算每一个群体期望的杂合基因型占比

Pop1为0.5,Pop2为0.455,Pop3为0.455

【公式标注】Hexp=1−∑(p2+q2)H_{exp} = 1-\sum(p^2 + q^2)Hexp​=1−∑(p2+q2)

6、计算A allele的频率均值

p‾=2∗125+250+2∗50+30+2∗100+5001000+200+2000\overline{p} = \frac{2*125 + 250 + 2*50 + 30 + 2*100 + 500}{1000 + 200 + 2000}p​=1000+200+20002∗125+250+2∗50+30+2∗100+500​,即0.4156

7、计算a allele的频率均值

1−p‾=q‾1 - \overline{p} = \overline{q}1−p​=q​,即0.5844

8、计算the global heterozygosity indices

1.首先使用HobsH_{obs}Hobs​计算HIH_{I}HI​

HI=Hobs1∗N1+Hobs2∗N2+Hobs3∗N3NtotalH_{I}=\frac{H_{obs1}*N_{1} + H_{obs2}*N2 + H_{obs3}*N3}{N_{total}}HI​=Ntotal​Hobs1​∗N1​+Hobs2​∗N2+Hobs3​∗N3​,带入数值,即0.4875

2.使用H_{exp}计算H_{S}

HS=Hexp1∗N1+Hexp2∗N2+Hexp3∗N3NtotalH_{S} = \frac{H_{exp1}*N_{1} + H_{exp2}*N2 + H_{exp3}*N3}{N_{total}}HS​=Ntotal​Hexp1​∗N1​+Hexp2​∗N2+Hexp3​∗N3​,带入数值,即0.4691

3.计算global heterozygosity indicex的期望值

HT=1−∑(p‾2+q‾2)=1−(0.41462+0.58442)H_{T} = 1 - \sum(\overline{p}^2 + \overline{q}^2) = 1 - (0.4146^2 + 0.5844^2)HT​=1−∑(p​2+q​2)=1−(0.41462+0.58442),即0.4845

9、计算the global F-statistics

1.计算FIS=HS−HIHSF_{IS} = \frac{H_{S} - H_{I}}{H_{S}}FIS​=HS​HS​−HI​​,即-0.0393
2.计算FST=HT−HSHTF_{ST} = \frac{H_{T} - H_{S}}{H_{T}}FST​=HT​HT​−HS​​,即0.0344
3.计算FIT=HT−HIHTF_{IT} = \frac{H_{T} - H_{I}}{H_{T}}FIT​=HT​HT​−HI​​,即-0.0036

10、计算结果说明了什么?

群体间分化的程度达到了3.4%

示例:vcftools计算F_{ST}

【标注】只适用于二倍体。

vcftools --gzvcf input.vcf.gz --weir-fst-pop pop1_sample_id.txt --weir-fst-pop pop2_sample_id.txt --fst-window-size 10000 --fst-window-step 10000 --out pop1_pop2# 参数说明
--gzvcf            # 要求输入为.gz格式的vcf文件
--weir-fst-pop     # 输入VCF文件中的sample,为一个文本文件,每一行一个sample
--fst-window-size  # 设置计算Fst的窗口大小,根据自己的数据进行设置,看看别人文章里怎么用的
--fst-window-step  # 设置计算Fst的步长长度,根据自己的数据进行设置

(4)FSTF_{ST}FST​计算完了之后该干啥?

在对两个群体之间进行不同区段的FSTF_{ST}FST​计算之后,需要判断哪一些区段,是“真正”受到了选择压力,根据近期看的文章,得到可以选择前5%的作FSTF_{ST}FST​为一个阈值,对区域进行划分,高于该阈值的被认为受到了选择压力的影响,进一步就可以得到是受到影响的是哪些SNP,最终即可得到受到影响的是哪些gene。

当然,对FSTF_{ST}FST​的计算结果可视化,当然也是非常重要的一部分,但是这篇文章主要想写的是计算原理以及如何使用vcftools进行计算。

参考资料

[1] https://en.wikipedia.org/wiki/Fixation_index
[2] http://www.uwyo.edu/dbmcd/popecol/maylects/fst.html
[3] The genome of oil-Camellia and population genomics analysis provide insights into seed oil domestication

【群体遗传】Fst(群体间分化指数)相关推荐

  1. 群体遗传,进化分析利器Popgene分享给大家

    Popgene分析方法: SSR为显性分子标记,故将实验分析数据作为单倍型数据进行统计,在某一位点上依据条带的有或无分别记为1或0,输入Excel表中形成二元数据矩阵.在此数据基础上进行如下统计分析: ...

  2. 统计遗传学:第三章,群体遗传

    3. 群体遗传 大家好,我是飞哥. 前几天推荐了这本书,可以领取pdf和配套数据代码.这里,我将各个章节介绍一下,总结也是学习的过程. 引文部分是原书的谷歌翻译,正文部分是我的理解. 第一部分基础,分 ...

  3. 重测序群体遗传进化分析之进化树构建

    tree 重测序大家都不陌生,它是检测样本基因组变异(SNP,indel,SV,CNV)的主要手段之一,有了这些变异信息,后续可以做很多分析工作,例如: 遗传群体可以进行遗传图谱构建.BSA分析等:大 ...

  4. 群体遗传 | haplotype block | HaploBlocker使用

    HaploBlocker是分析单条染色体haplotype blocks,这也很容易理解,haplotype block是同一条染色体的某些区域.因此,分析时,需要按染色体或者Scaffold切分VC ...

  5. 派森诺群体遗传进化专题之进化树

    导读 岁岁年年花相似,细细推敲,实则年年岁岁花不同.人类进化历程中,万事万物都在悄然的变化着,这积沙成塔的量到质的跳跃,正是无数科研人员孜孜以求的方向–群体进化. 群体进化研究是指通过获得某物种自然群 ...

  6. pythonnet plink_群体遗传结构构建软件--Plink, admixture, phylip, MEGA总结

    开始正文之前先了解一下为什么构建群体遗传结构是重要的,并且可以通过哪些方式构建此结构: 对于方法1,我们需要使用Plink构建PCA图 (1) 首先使用plink将vcf格式文件转换成.bed , . ...

  7. 《综述》群体机器人:群体工程角度综述

    文章目录 摘要 1. 简介 1.1 群体工程(Swarm engineering) 1.2 综述的大纲(The outline of our review) 1.3 回顾以往的观点(Previous ...

  8. 计算fst、pi等群体遗传特征数据

    先得到NLR所有基因的vcf信息 将每个基因的信息提取成单独的vcf文件 vcftools进行计算 目    录 一.处理vcf文件 文件位置: (一)提取信息的代码 1. python循环嵌套注意事 ...

  9. 群体遗传 | haplotype block | HaploBlocker参数介绍

    单倍型块( haplotype block )是连续基因组区域的一系列遗传变异位点的组合,这种基因组区域通常表现为高连锁不平衡.低重组. 但其实在育种过程中,情况可能更为复杂,我们观察到的haplot ...

最新文章

  1. java logback 使用_Java | Logback的使用配置
  2. JXLS 2.4.0系列教程(四)——拾遗 如何做页面小计
  3. 用函数式编程,从0开发3D引擎和编辑器(三):初步需求分析
  4. neo4j java查找_Spring-Boot使用neo4j-java-driver-- 查找两个节点之间关系的最短路径
  5. 生产者消费者模型 java
  6. VS2010 VS2012版最常用的快捷键
  7. 零基础的同学看过来,如何系统学习前端,保证让你不亏
  8. java中获取路径_java中获取路径的几种基本的方法
  9. HTML跳转php没反应的问题解决
  10. 工具资源合集【持续更新】文字识别、英文写作、频段查询
  11. 小程序服务器mp4文件,如何添加小程序视频链接及获取MP4格式视频
  12. 虚拟机opnsense作为dhcp服务器,ESXI 与 OPNSense 配合
  13. 7月22日 暑假的一些心得记录
  14. 互联网研发团队-岗位职责
  15. 10种常用的分析模型 数据分析必看
  16. 如何让微信号开通检测软件替你顶起一片天?
  17. 二级建造师报考条件不符,选择代报名靠谱吗?
  18. gj TeamView验证手机号 一直加载
  19. Linux下启动oracle_无名小仙男
  20. webug 3、延时注入

热门文章

  1. linux 信号sigabrt,程序运行产生SIGABRT信号的原因---转
  2. 洗料系列-编程语言专题-Java 19【线程×,协程√】
  3. 设计模式 “之“ 责任链模式
  4. GEP基因表达式编程
  5. Verilog 实现千兆网UDP协议 基于88E1111--数据发送
  6. CITA 技术白皮书
  7. [前端之旅] - 01 开端 (持续更新各种资料)(夜·猫之使徒·哮喘征服者·被光选中的人·逐梦)
  8. B站头部UP主抱团垄断优质资源,腰部UP主的流量突破口在哪?
  9. 2012MDCC中国·移动开发者大会 邀请函
  10. 没有学过C语言可以学Java吗?