基因流,又称为基因迁移或等位基因流动,是指个体或其基因从一个种群传播到另一个种群的过程。这一过程可以通过个体移动、繁殖、配子(如花粉、种子)转移等实现。

基因流导致不同种群间的等位基因频率趋于一致,从而影响种群的遗传变异性和进化动态。

基因流的机制:

  1. 个体的迁移与繁殖
  2. 配子传播
  3. 杂交与回交
  4. 人类活动引起的基因流

渐渗:是指两个不同种群或物种之间的杂交后代与其中一个亲本

SNP 过滤

位点质控通常包括缺失率、二等位、次等位基因频率以及连锁不平衡过滤。

  1. vcf=genome.vcf
  2. vcftools \
  3. --vcf ${vcf} \
  4. --max-missing 0.9 \
  5. --min-alleles 2 \
  6. --max-alleles 2 \
  7. --maf 0.05 \
  8. --recode \
  9. --recode-INFO-all \
  10. --out filter

如果数据中包括性染色体和细胞器的数据,分析前进行去除

  1. vcftools \
  2. --vcf filter.recode.vcf \
  3. --not-chr chrX \
  4. --not-chr chrY \
  5. --not-chr MT \
  6. --not-chr CP \
  7. --recode \
  8. --recode-INFO-all \
  9. --out filter.autosome

连锁不平衡过滤

群体较大的情况下可以基于 R2 值进行过滤,个体较少时可以基于间距进行 SNP 抽取。

  1. plink \
  2. --vcf filter.recode.vcf \
  3. --indep-pairwise 50 10 0.2 \
  4. --out tmp.ld \
  5. --allow-extra-chr \
  6. --set-missing-var-ids @:#
  7. plink \
  8. --vcf filter.recode.vcf \
  9. --extract tmp.ld.prune.in \
  10. --out filter.LD \
  11. --recode vcf-iid \
  12. --keep-allele-order \
  13. --allow-extra-chr \
  14. --set-missing-var-ids @:#
  15. # 基于 SNP 间距抽取数据
  16. vcftools \
  17. --vcf filter.recode.vcf \
  18. --thin 20000 \
  19. --recode \
  20. --recode-INFO-all \
  21. --out filter.thin

系统进化树构建

群体 SNP 数据中,包括每个物种/群体的多个个体,因此可以通过对所有个体/物种构建系统发育树。

vcf2phylip

  1. iqtree \
  2. -s ...... \
  3. -nt 4 \
  4. -m GTR+ASC \
  5. -bb 1000 \
  6. -st DNA \
  7. -pre iqtree_tmp \
  8. &> iqtree_tmp.log
  9. iqtree \
  10. -s out_tmp.varsites.phy \
  11. -nt 4 \
  12. -m GTR+ASC \
  13. -bb 1000 \
  14. -st DNA \
  15. -pre iqtree_GTR \
  16. &> iqtree_GTR.log
  17. # 或
  18. iqtree \
  19. -s out_tmp.varsites.phy \
  20. -nt 4 \
  21. -m MFP+ASC \
  22. -bb 1000 \
  23. -st DNA \
  24. -pre iqtree_MFP \
  25. &> iqtree_MFP.log

基因流分析

tremix

OrientAGraph

参考