RaPID高效检测IBD片段 (IBD segments detection)

本文内容:

RaPID简介
RaPID算法
RaPID教程
注意事项
参考

RaPID简介

RaPID是一款用于在基因组数据中检测IBD(identity-by-descent segments)片段的工具,其特点是应用了PBWT(Positional Burrows-Wheeler Transform)算法,能够快速高效地完成检测。BWT被广泛应用于文件压缩与序列比对等领域,序列比对的BWA软件也利用的是这个算法。

IBD回顾:GWASLab:状态同源 / 血缘同源 IBS/ IBD

RaPID算法示意图

RaPID算法简介

第一步,通过从每个窗口(wi)内随机取一个变异位点,对输入的定像后的基因型进行多重随机投影。

第二步,对每个投影后的面板使用PBWT(Positional Burrows-Wheeler Transform)算法,找出截断值L以上长度的精确匹配序列。

第三步,收集上一步的精确匹配序列,当某一区域精确匹配序列多于一定数量时,就判定为IBD片段。

图中例子各参数为:长度的截断值为10,窗口大小为5,重复次数为4,成功判定需要的次数为2,不足2次的精确匹配被舍弃


RaPID教程

下载地址:

https://github.com/ZhiGroup/RaPID

RaPID输入文件:

  1. 遗产图谱文件格式(tab间隔):

<site_number> <genetic_location>

每一行包含位点索引以及位点的遗传位置,位点的顺序要与输入VCF文件中位点顺序相同。

该文件的位点顺序应该是单调上升的,且不能有缺失。

RaPID也提供了两个python脚本可以用来对异常图谱进行过滤与插值填充:

对 genetic mapping file 进行过滤

python filter_mapping_file.py <genetic_map> <filtered_map>

对遗传位置进行插值填充, 使位点与输入VCF中位点一一匹配

python interpolate_loci.py <filtered_map> <vcf_input_gzip> <output_map_file>

2. 定相过的VCF文件

参考:GWASLab:Eagle2单倍型定相工具 Haplotype phasing

RaPID_v.1.7 版本 具体使用方法

./RaPID_v.1.7 \
	-i <input_file_vcf_compressed> \
	-g <genetic_mapping_file> \
	-d <min_length_in_cM> \
	-o <output_folder> \
	-w <window_size> \
	-r <#runs> \
	-s <#success>

使用作者提供的演示数据:

./RaPID_v.1.7 \
	-i 4k_1e7.vcf.gz \
	-g 4k_1e7_e0.001.g \
	-d 5 \
	-w 250 \
	-r 10 \
	-s 2 \
	-o output_folder

RaPID会将在样本两两之间检测到的所有IBD片段以以下格式输出:

<chr_name> <sample_id1> <sample_id2> <hap_id1> <hap_id2> <starting_pos_genomic> <ending_pos_genomic> <genetic_length> <starting_site> <ending_site>

执行后会得到名为 results.max.gz 的结果

Create sub-samples..
Done!

zcat results.max.gz | head
chr1	0	256	0	0	189	9999752	9.99956	0	94991
chr1	6	1510	1	1	3282417	9616920	6.3345	31000	91249
chr1	18	1801	0	1	189	5186009	5.18582	0	49249
chr1	33	435	0	0	3523968	8873991	5.35002	33250	84249
chr1	42	1854	0	0	1002623	6026274	5.02365	9500	57249
chr1	44	794	1	1	3282417	9797410	6.51499	31000	92999
chr1	51	1394	1	0	3337555	9999752	6.6622	31500	94991
chr1	73	88	1	1	149874	6820265	6.67039	1500	64749
chr1	80	199	0	1	1831845	6974084	5.14224	17500	66249
chr1	82	1849	0	0	3445503	8974078	5.52858	32500	85249

注意事项

如果输入文件的变异密度较低的话,需要相应的减小窗口大小 -w 的值。 例如,对于UKBB,位点密度比示例数据中低了80倍,那么窗口小就应相应的从-w 250减小到-w 3.

参考:

  1. Naseri, Ardalan, Xiaoming Liu, Kecong Tang, Shaojie Zhang, and Degui Zhi. “RaPID: ultra-fast, powerful, and accurate detection of segments identical by descent (IBD) in biobank-scale cohorts.” Genome biology 20, no. 1 (2019): 143;
  2. Ultra-fast Identity by Descent Detection in Biobank-Scale Cohorts using Positional Burrows-Wheeler Transform Ardalan Naseri, Xiaoming Liu, Shaojie Zhang, Degui Zhi bioRxiv 103325;

状态同源 / 血缘同源 IBS / IBD – 概念与计算(PLINK)

IBD与IBS均是,基于遗传信息,表示样本对之间亲缘关系的指标,具体定义如下:

血缘同源(Identity By Descent,IBD),子代中共有的等位基因来源于同一祖先。

状态同源(identical by state ,IBS),两个个体拥有相同的等位基因(不一定来源以同一祖先)。

The origin of IBD segments is depicted via a pedigree.

图1: 橙色IBD片段表示来自同一祖先的片段

通常IBD无法直接观测,但IBS可以通过两个体基因型算出。

个体 1个体2IBS
AAAA2
AAAa1
AAaa0
在某一基因座,两个体可能有 0个,1个,或2个相同的等位基因

IBD可以让我们了解两个体间的亲缘关系,虽然无法直接测得,但可以根据IBS以及等位基因频率的分布来推定。

PLINK中使用 PI_HAT 值来推定IBD的值。该方法基于隐马尔科夫模型 hidden Markov model (HMM),通过矩估计(method-of-moments)来计算 IBD=1, 2或0 的概率。

PI_HAT:为IBD比例 , 即 P(IBD=2) + 0.5*P(IBD=1),PI_HAT的值与对应关系如下所示:

  • PI_HAT=0 无亲缘关系
  • PI_HAT=0.25 表兄弟
  • PI_HAT=0.5 亲子或兄弟姐妹
  • PI_HAT=1 本人或同卵双胞胎

PLINK1.9中提供了–genome的选项,以计算 PI_HAT (注意,计算前强烈建议对SNP进行pruning)

输出文件会被写进 .genome的文件中,每一列的内容如下

FID1	Family ID for first sample
IID1	Individual ID for first sample
FID2	Family ID for second sample
IID2	Individual ID for second sample
RT	Relationship type inferred from .fam/.ped file
EZ	IBD sharing expected value, based on just .fam/.ped relationship
Z0	P(IBD=0)
Z1	P(IBD=1)
Z2	P(IBD=2)
PI_HAT	Proportion IBD, i.e. P(IBD=2) + 0.5*P(IBD=1)
PHE	Pairwise phenotypic code (1, 0, -1 = AA, AU, and UU pairs, respectively)
DST	IBS distance, i.e. (IBS2 + 0.5*IBS1) / (IBS0 + IBS1 + IBS2)
PPC	IBS binomial test
RATIO	HETHET : IBS0 SNP ratio (expected value 2)

参考:

https://www.cog-genomics.org/plink2/ibd

PLINK: A Tool Set for Whole-Genome Association and Population-Based Linkage Analyses