近十几年来,全基因组关联研究(Genome-Wide Association Study,GWAS)迅速发展,为探索疾病的发病机制做出了突出贡献,也为精准医学的发展奠定基础。在我们进行GWAS分析时,经常会使用到PLINK软件,对于新手来说可能掌握起来比较困难,所以首先我将和大家分享PLINK文件的基本格式。
我在这里讲到的PLINK文件主要有三类,即bed,bim和fam文件。其中bed是存储基因型信息的,bim文件则是存储每个遗传变异(通常是SNP)的相关信息,最后的fam存储的是样本信息,接下来我将一一介绍。
文件bed主要是存储等位基因信息,它开头前三个字节永远是0x6c, 0x1b, 和0x01,接下来就是V组N/4个字节的序列,这里V是指遗传变异的个数,N是指样本数,假如N无法被4整除,那么将N/4的结果取整后加1作为各组的字节数,编码信息如下:
00:基因型是bim文件第一个等位基因的纯合子
01:基因型缺失
10:基因型是杂合子
11:基因型是bim文件第二个等位基因的纯合子
如果你在PLINK里加载如下文件:
test.ped: 1 1 0 0 1 0 G G 2 2 C C 1 2 0 0 2 0 A A 0 0 A C 1 3 1 2 1 2 0 0 1 2 A C 2 1 0 0 1 0 A A 2 2 0 0 2 2 0 0 2 2 A A 2 2 0 0 2 3 1 2 1 2 A A 2 2 A A
test.map: 1 snp1 0 1 1 snp2 0 2 1 snp3 0 3
那么它就会自动生成一个bed文件,查看bed文件内容为:
0x6c 0x1b 0x01 0xdc 0x0f 0xe7 0x0f 0x6b0x01
同时也会有bim文件:
1 snp1 0 1 G A 1 snp2 0 2 1 2 1 snp3 0 3 A C
这里bed文件的前三个字节是固定格式,第四个字节0xdc的二进制值为11011100,那么在第一个SNP(snp1)上,样本1的基因型00对应就是GG(从后往前数),样本2的基因型11对应就是AA, 样本3的基因型缺失,样本4基因型11对应AA,第五个字节0x0f 的二进制值为00001111,那么样本5的基因型11对应AA,样本6基因型11也对应AA,注意了后面的00和00是指6个样本每四个分一组需要分为两组,但由于两组需要8样本,这时就缺少两个样本,这缺失的就用00表示。这里第6和第7字节存储的是第二个snp的基因型信息,推断方法同上,这里就不赘述了。
讲完bed文件后,bim文件应该非常好理解了,这里bim文件是一个没有题头的文本文件,每一行代表一个遗传变异,共计有6列,其信息如下:
(1) 第一行:染色体编号(通常用整数标记,如22表示第22条染色体,性染色体和线粒体染色体用'X'/'Y'/'XY'/'MT'表示,而'0' 代表染色体信息缺失) ;
(2) 第二行:变异标识符,这个就相当与每一个遗传变异的编号,常见的SNP可以采用以“rs”开头的编号;
(3) 第三行:每个遗传变异在基因组上的位置,用摩尔根或者厘摩尔根表示;
(4) 第四行:碱基对的坐标;
(5) 第五行:等位基因1,通常是次要等位基因(minor allele);
(6) 第六行:等位基因2,通常是主要等位基因(major allele)。
关于fam文件,它也是一个没有题头的文本文件,每一行代表一个样本,共计6列,其信息如下:
(1) 第一行:家系编号('FID')
(2) 第二行:家系内部编号('IID'; 不能是 '0')
(3) 第三行:父系编号 ('0' 表示父系信息缺失)
(4) 第四行:母系编号('0' 表示母系信息缺失)
(5) 第五行:性别编号('1' = 男, '2' = 女, '0' = 性别未知)
(6) 第六行:表型值 ('1' = 对照, '2' = 病例, '-9'/'0'/表示表型缺失)。
关于PLINK文件的基本格式就介绍完毕了,希望大家能牢记各个文件的结构信息,这在后续的数据分析中非常重要。