连锁不平衡与单倍型分析
连锁不平衡(LD)指不同位点的等位基因在群体中非随机地一起出现。相邻位点很少被重组分开,所以它们的等位基因倾向于成组遗传,这些成组的等位基因组合就是单倍型。LD 的强弱常用两个指标描述:D' 衡量两个位点之间是否发生过历史重组,r² 衡量一个位点能在多大程度上代替另一个位点的信息。LD 分析是群体遗传学的基础工具:它决定 GWAS 需要多少标记、哪些 SNP 可以互相替代,影响填充和精细定位的效果,也用于估计重组热点和群体历史。典型输入是一组样本的 SNP 基因型(PLINK 或 VCF 格式),分析单个基因区域时也可以只用几十个位点。
什么时候用
- 查找某个 SNP 的高 LD 替代位点,用于芯片上缺失位点的替代
- 画候选基因区域的 LD 热图和单倍型块,配合关联结果展示
- 评估一个群体的 LD 衰减速度,为 GWAS 或基因组选择决定标记密度
- 主成分、ADMIXTURE 或 PRS 分析前做 LD 剪枝或 clump
- 在候选区域内比较单倍型与表型的关联,检验多个位点的联合作用
不适合的情况
- 样本量很小又关注低频位点:D' 在小样本和稀有等位基因下会系统性偏高
- 把不同祖源样本混在一起计算 LD:混合会制造虚假的长程 LD
- 用 LD 推断某个位点是功能位点:高 LD 只说明共遗传,不说明谁起作用
需要准备的数据
- 基因型文件
- PLINK bed/bim/fam 或 VCF;只计算 LD 时可用未定相数据,单倍型分析需要定相或由软件推断相位
- 样本祖源信息
- 按祖源或亚群分组,各组分别计算 LD;不清楚祖源时先做主成分分析划分
- 区域或位点列表
- 候选基因坐标或 SNP 列表,注意与基因型文件使用相同基因组版本
- 表型(单倍型关联时)
- 与样本 ID 对应的表型和协变量,二分类或连续性状均可
分析步骤
- 1
质控与分群
按检出率、MAF 和 HWE 过滤位点,剔除近亲样本,再按祖源分组。HWE 严重偏离的位点常是分型错误,会扭曲 LD 估计。分组后每组样本数要足够,几十个样本只适合看强 LD 的大致格局。
- 2
计算成对 LD
用 PLINK 的 --r2 计算位点对之间的 r²,配合 --ld-window-kb 和 --ld-window-r2 控制输出范围;需要 D' 时加 dprime 修饰符。PLINK 1.9 默认只输出 r² 不低于 0.2 的位点对,看全部结果需把 --ld-window-r2 设为 0。
- 3
LD 剪枝
用 --indep-pairwise 按窗口大小、步长和 r² 阈值逐窗剔除高 LD 位点,常见设置如 50 个位点、步长 5、r² 0.2。剪枝结果用于主成分、亲缘估计和 ADMIXTURE;剪枝后的位点数应明显少于原始位点数。
- 4
LD 衰减分析
计算一定距离内所有位点对的 r²,按距离分箱取平均,画 r² 随距离下降的曲线,可用 PopLDdecay 等工具。读取 r² 降到最大值一半或降到某个阈值时的距离,作为该群体 LD 衰减距离。
- 5
划分单倍型块
在候选区域用 Haploview 或 LDBlockShow 按 D' 置信区间等规则划分单倍型块,并画 LD 热图。块的边界通常对应重组热点;块内位点可选少数标签 SNP 代表整块的单倍型信息。
- 6
估计单倍型频率
对未定相数据,用 EM 算法估计各单倍型频率,或先用定相软件得到个体单倍型。频率低于 1% 左右的单倍型估计不稳定,通常合并为一类。检查估计频率之和是否为 1、主要单倍型是否与公共数据库一致。
- 7
单倍型关联
用 R 包 haplo.stats 的 haplo.score 或 haplo.glm,检验单倍型与表型的关联并校正协变量,同时报告全局检验和每个单倍型的效应。与单 SNP 结果对比,看单倍型是否提供额外信息。
关键参数与决策
r² 还是 D'
r² 同时受等位基因频率影响,频率差别大的两个位点 r² 不可能很高,适合判断替代关系和剪枝。D' 只反映是否有重组,适合划分单倍型块,但对稀有等位基因和小样本很敏感。选标签 SNP 和做 clump 用 r²。
剪枝阈值与窗口
r² 阈值越低剩余位点越独立但数量越少,主成分分析常用 0.1 到 0.2。窗口太小会漏掉长程 LD,LD 范围大的群体(如家畜品种、近交系)需要更大窗口或以 kb 为单位设置。
长程 LD 区域
MHC、8 号染色体倒位区等区域 LD 范围很长,会主导主成分。做群体结构前通常把这些已知长程 LD 区域整体排除,而不是只靠剪枝处理。
单倍型频率下限
单倍型关联中极低频单倍型的效应估计极不稳定。haplo.stats 等工具可设置最低频率,把稀有单倍型合并;阈值过高会掉信息,过低会产生巨大标准误,通常结合样本量取 1% 到 5%。
LD 衰减距离阈值
常用 r² 降到最大值一半的距离,也有研究用 r² 降到 0.1 或 0.2 的距离。不同阈值得到的距离差别很大,在比较不同群体时要统一口径。
常见错误
- 混合多个亚群计算 LD:亚群间等位基因频率差异会制造远距离甚至跨染色体的伪 LD,热图上出现成片高值。
- 用 D' 等于 1 判断位点可以互相代替:D' 为 1 只说明没有观察到第四种单倍型,r² 可能很低,用作替代会丢失大部分信息。
- 公共数据库的 LD 直接套用到研究人群:欧洲和东亚的 LD 结构差别明显,替代位点可能在另一人群中不再相关。
- LD 剪枝后的位点用于 GWAS 关联检验:剪枝只适用于主成分、亲缘等需要独立位点的分析,关联检验应使用全部位点。
- 混用基因组版本坐标划分区域:GRCh37 与 GRCh38 坐标不同,区域可能截错,热图里出现与预期不符的位点。
- 只用十几个样本画 LD 热图并解读单倍型块:块边界很不稳定,换一批样本就会变化。
结果怎么看
LD 热图
倒三角矩阵中每格代表两个位点的 r² 或 D',颜色越深 LD 越强,黑框标出单倍型块。看块的数量与边界、块内是否均匀深色。远离对角线的位点对出现深色,先怀疑人群混合或分型错误。
LD 衰减曲线
横轴是位点间距离,纵轴是平均 r²。曲线下降越快说明历史重组越多、有效群体越大。比较多个群体时,衰减更慢的群体通常经历过瓶颈或较强的人工选择,所需标记密度也更高。
单倍型频率表
列出各单倍型的等位基因组合和估计频率。主要单倍型的频率之和应占大部分;有大量频率很低的单倍型,可能是分型错误或相位推断不稳。可与 1000 Genomes 同祖源人群的频率比对核查。
单倍型关联结果
全局检验 P 值说明区域整体是否与表型相关,每个单倍型的效应以最常见单倍型为参照。若某单倍型效应显著但只由一个 SNP 决定,结论与单 SNP 分析相同,不宜夸大为单倍型效应。
和相近方法怎么选
LD 剪枝与 clump
剪枝只依据位点之间的 LD,不看关联结果,目的是得到一组近似独立的位点。clump 以 P 值最小的位点为中心,合并与它高 LD 的位点,目的是整理独立关联信号。做主成分用剪枝,整理 GWAS 结果和构建 PRS 用 clump。
单 SNP 关联与单倍型关联
单 SNP 检验简单、易于与其他研究比较。单倍型分析在致病变异未被分型、但被某个单倍型标记时可能更有效,代价是自由度增加和稀有单倍型不稳。大样本 GWAS 中多用单 SNP 加精细定位,候选区域研究可以补充单倍型分析。
LD 分析与群体结构分析
LD 分析关注位点之间的相关,群体结构分析关注样本之间的遗传相似性。两者相互依赖:群体结构会扭曲 LD,而做群体结构前又需要用 LD 剪枝去掉冗余位点。通常先做剪枝和结构分析,再按群体分别计算 LD。
常见问题
r² 和 D' 有什么区别,用哪个?
D' 衡量两个位点间是否发生过重组,取值不受频率上限约束;r² 衡量一个位点预测另一个位点的能力,与关联研究的统计功效直接相关。选替代位点、LD 剪枝、判断信号是否独立都用 r²;划分单倍型块和研究重组历史常用 D'。
怎样查某个 SNP 的 LD 替代位点(proxy SNP)?
有本地基因型时,用 PLINK 的 --r2 配合 --ld-snp 指定目标位点,并设置窗口和 r² 阈值。没有本地数据时,可用 LDlink 等在线工具选择对应人群查询。注意参考人群要与研究人群祖源一致,常用 r² 不低于 0.8 作为替代标准。
LD 热图怎么画?
常用工具有 Haploview、LDBlockShow 和 R 包 LDheatmap。Haploview 适合几十到几百个位点的候选区域,能同时划分单倍型块;LDBlockShow 支持直接读 VCF 并叠加关联 P 值,适合较大区域。位点太多时热图难以辨认,应先缩小区域或抽稀。
LD 衰减距离有什么用?
它决定在一个群体中做关联分析需要多密的标记:衰减距离越短,覆盖全基因组所需的标记越多。动植物育种中常据此设计芯片密度和划定候选区间宽度。它也反映群体历史,衰减慢的群体往往有效群体规模较小或经历过强选择。
单倍型分析需要先做相位推断吗?
不一定。haplo.stats 等工具可以在未定相的基因型上用 EM 算法估计单倍型频率并做关联。样本量较大、区域较长或需要个体单倍型时,先用 SHAPEIT、Eagle 或 Beagle 定相更方便。定相质量会影响结果,家系数据可以利用亲子关系提高准确度。
在 Codar 里怎么做
在 Codar 里提供基因型文件和关注的区域或位点,并说明样本的祖源分组,会先确认分组方式和指标选择,再按群体计算成对 r² 与 D'、完成 LD 剪枝、绘制 LD 衰减曲线和 LD 热图,划分单倍型块并估计单倍型频率;有表型时继续做单倍型关联分析。交付 LD 热图、衰减曲线、单倍型频率与关联结果表、分析报告和可复现脚本。
我有 600 头猪的 50K 芯片数据(PLINK 格式),分三个品种,想比较各品种 LD 衰减距离,并画 7 号染色体一个 QTL 区域的 LD 热图