问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

群体基因组分析:从数据准备到结果解读的完整指南

创作时间:
作者:
@小白创作中心

群体基因组分析:从数据准备到结果解读的完整指南

引用
CSDN
1.
https://m.blog.csdn.net/Da_gan/article/details/143889797

重测序群体基因组分析是利用高通量测序技术对种群中多个个体的基因组进行测序,以研究种群中的遗传变异及其与进化、功能和适应性的关系。这种分析方法广泛应用于农业、医学、进化生物学和保护生物学等领域。

重测序群体基因组分析概述

研究目标

  • 遗传变异:识别种群中的单核苷酸多态性(SNPs)、插入/缺失(Indels)、结构变异(SVs)等。
  • 遗传多样性:评估种群内外的遗传多样性水平(如 π 值)。
  • 种群结构:研究种群的分化、迁移模式及其进化历史。
  • 自然选择信号:检测特定区域的选择扫,以识别适应性基因。
  • 功能注释:关联遗传变异与基因功能、表型或疾病。

分析流程

数据准备

1.1. 样品采集

  • 目标样品:应尽可能覆盖种群的地理范围和表型多样性。
  • 样本类型:植物叶片、动物组织、血液、DNA 提取物等。

1.2. 高通量测序

  • 平台:Illumina(短读长)、PacBio/ONT(长读长)。
  • 目标覆盖度:10x-30x 通常足够,低覆盖度适用于超大规模种群研究。

数据质量控制

2.1. 原始数据质控

  • 检查数据质量:如碱基分布、质量分数、接头污染。
  • 工具
  • FastQC:生成质量报告。
  • fastp:清洗低质量序列、去除接头污染。

2.2. 清洗后的数据

  • 确保高质量的清洗数据(Q20/Q30 > 90%)。
  • 保留有生物意义的片段。

数据比对

3.1. 参考基因组选择

  • 高质量参考基因组(FASTA 格式)是比对的基础。

3.2. 比对步骤

  • 工具
  • BWA 或 Bowtie2:适合短读长数据。
  • minimap2 或 NGMLR:适合长读长数据。
  • 过程
  • 构建参考基因组索引。
  • 比对清洗后的序列到参考基因组。
  • 输出比对结果(BAM/SAM 格式)。

3.3. 数据处理

  • 使用 SAMtools 或 Picard 对 BAM 文件进行排序、去重复和质量评估。

变异检测

4.1. SNP 和 Indel 检测

  • 工具
  • GATK(常用的变异检测工具包)。
  • BCFtools(轻量化工具)。
  • 流程
    1. 进行初步变异调用。
    2. 过滤低质量变异(基于质控指标,如质控深度、变异评分)。
    3. 输出高可信度的 VCF 文件。

4.2. 结构变异检测

  • 工具
  • Lumpy、Manta:基于短读长的 SV 检测。
  • PBSV、Sniffles:基于长读长的 SV 检测。

4.3. 注释变异

  • 目的:了解变异的潜在功能和生物学意义。
  • 工具
  • ANNOVAR、SnpEff:功能注释。
  • 数据库:dbSNP、ClinVar、gnomAD 等。

种群遗传学分析

5.1. 遗传多样性

  • 指标
  • 核苷酸多样性(π)。
  • 观测杂合度(Ho)。
  • 有效等位基因数。
  • 工具
  • VCFtools、PopGenome(R 包)。

5.2. 种群分化

  • 指标
  • Fst:评估种群分化水平。
  • Nm:基因流动。
  • 工具
  • VCFtools:计算 Fst。
  • Arlequin:复杂分化分析。

5.3. 种群结构

  • 方法
  • 主成分分析(PCA)。
  • 结构分析(如 ADMIXTURE)。
  • 工具
  • PLINK:用于 PCA。
  • ADMIXTURE:估算种群的祖先比例。

5.4. 群体历史

  • 方法
  • 突变负载分析。
  • coalescent 模型推断。
  • 工具
  • PSMC、MSMC:推断种群历史变化。
  • FASTSIMCOAL2:模拟历史动态。

自然选择分析

6.1. 检测选择扫

  • 目标:识别与适应相关的基因组区域。
  • 方法
  • 基于频率的方法(如 iHS、XP-EHH)。
  • 基于多样性的方法(如 π、Fst)。
  • 工具
  • SweeD、RAiSD。

6.2. 功能富集

  • 对选择基因进行 GO/KEGG 功能分析,揭示生物学意义。
  • 工具:DAVID、GOseq。

可视化

  • PCA 图:种群结构。
  • 曼哈顿图:选择信号。
  • 热图:种群间的遗传分化。
  • Circos 图:染色体变异分布。

分析结果解读

遗传多样性

  • π 值反映种群内的多样性。
  • Fst 值评估种群间的分化。

自然选择

  • iHS 和 XP-EHH 信号提示近期的正选择区域。
  • 富集分析揭示功能性变异的重要生物学路径。

种群结构

  • PCA 和 ADMIXTURE 结果显示种群间的祖先比例和分化模式。

分析流程

1. 数据准备与质量控制

  • 目的:确保高质量的测序数据。
  • 输入:测序数据(FASTQ 格式)。
  • 工具
  • fastp 或 Trimmomatic:去除低质量碱基和接头序列。
  • FastQC:检查数据质量。

常用代码

# Step 1: FastQC 检查测序数据质量
fastqc sample_1.fastq.gz sample_2.fastq.gz -o qc_output/
# Step 2: 使用 fastp 修剪低质量数据
fastp -i sample_1.fastq.gz -I sample_2.fastq.gz \
      -o clean_sample_1.fastq.gz -O clean_sample_2.fastq.gz \
      -j fastp_report.json -h fastp_report.html
  1. 比对到参考基因组
  • 目的:将短读长序列比对到参考基因组,获得染色体位置。
  • 输入:参考基因组(FASTA 格式)、清洗后的测序数据。
  • 工具:BWA、Bowtie2、SAMtools。

常用代码

# Step 1: 构建参考基因组索引
bwa index reference_genome.fa
# Step 2: 使用 BWA-MEM 进行比对
bwa mem -t 8 reference_genome.fa clean_sample_1.fastq.gz clean_sample_2.fastq.gz > sample.sam
# Step 3: 将 SAM 文件转换为 BAM 文件并排序
samtools view -bS sample.sam | samtools sort -o sample_sorted.bam
# Step 4: 索引 BAM 文件
samtools index sample_sorted.bam
  1. 变异检测
  • 目的:识别 SNP(单核苷酸多态性)和 Indel(插入/缺失)。
  • 工具:GATK、BCFtools。

常用代码

# Step 1: 使用 GATK 进行突变检测
gatk HaplotypeCaller \
    -R reference_genome.fa \
    -I sample_sorted.bam \
    -O raw_variants.vcf
# Step 2: 对变异进行过滤
gatk VariantFiltration \
    -R reference_genome.fa \
    -V raw_variants.vcf \
    --filter-expression "QD < 2.0 || FS > 60.0" \
    --filter-name "low_quality" \
    -O filtered_variants.vcf

4. 种群遗传学分析

  • 目的:研究种群结构、遗传多样性、选择压力。
  • 工具
  • VCFtools、PLINK:分析 VCF 文件中的遗传变异。
  • ADMIXTURE、PCA:种群结构分析。
  • RAxML 或 IQ-TREE:构建进化树。

常用代码

多样性和分化分析

# Step 1: 计算每个位点的多态性和核苷酸多样性 (π)
vcftools --vcf filtered_variants.vcf --site-pi --out pi_values
# Step 2: 计算 Fst
vcftools --vcf filtered_variants.vcf --weir-fst-pop population1.txt --weir-fst-pop population2.txt --out fst_values

PCA 和种群结构

# Step 1: 转换 VCF 为 PLINK 格式
plink --vcf filtered_variants.vcf --make-bed --out plink_data
# Step 2: PCA 分析
plink --bfile plink_data --pca 10 --out pca_results
# Step 3: ADMIXTURE 分析
admixture --cv plink_data.bed 2

构建进化树

# Step 1: 提取 SNP 数据并转化为 PHYLIP 格式
vcftools --vcf filtered_variants.vcf --max-missing 0.9 --recode --out phylo_data
plink --vcf phylo_data.recode.vcf --recode-phylip --out phylo_data
# Step 2: 构建进化树
iqtree -s phylo_data.phy -m GTR+G -nt AUTO -bb 1000 -pre phylo_tree
  1. 自然选择检测
  • 目的:识别适应性突变。
  • 工具
  • SweeD:检测选择扫。
  • RAiSD:快速检测选择信号。
  • XP-EHH 和 iHS:分析连锁不平衡。

常用代码

# 使用 RAiSD 检测选择信号
RAiSD -n analysis_name -I filtered_variants.vcf -f -o RAiSD_output
  1. 功能注释
  • 目的:了解变异的功能意义。
  • 工具
  • ANNOVAR:注释变异。
  • SnpEff:预测变异影响。

常用代码

# 使用 ANNOVAR 进行注释
table_annovar.pl filtered_variants.vcf humandb/ \
    -buildver hg38 \
    -out annotated_variants \
    -remove \
    -protocol refGene,cytoBand,gnomad_genome \
    -operation g,r,f \
    -nastring .
  1. 数据可视化
  • 目的:生成易于解释的图表。
  • 工具
  • R(ggplot2、pheatmap)用于绘制 PCA、热图、曼哈顿图。
  • Circos:基因组范围的可视化。

R 示例代码

library(ggplot2)
# 导入 PCA 数据
pca_data <- read.table("pca_results.eigenvec", header = TRUE)
colnames(pca_data) <- c("Sample", "PC1", "PC2")
# 绘制 PCA 图
ggplot(pca_data, aes(x = PC1, y = PC2)) +
  geom_point(size = 3) +
  theme_minimal() +
  labs(title = "PCA Analysis", x = "Principal Component 1", y = "Principal Component 2")
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号