plink软件初体验3--计算样本杂合度和SNP位点杂合度
这里,模拟一个plink文件的数据,8个样本,8个SNP位点,通过手动Excel计算样本杂合度和位点杂合度,比较plink计算杂合度的方法。1. 模拟数据ped数据:$ cat a.pedFAMILY1ID1000-9CCCCAAGGAGGGGGGCFAMILY1ID2000-9
这里,模拟一个plink文件的数据,8个样本,8个SNP位点,通过手动Excel计算样本杂合度和位点杂合度,比较plink计算杂合度的方法。
1. 模拟数据
ped数据:
$ cat a.ped
FAMILY1 ID1 0 0 0 -9 CC CC AA GG AG GG GG GC
FAMILY1 ID2 0 0 0 -9 CC GC AG GG GG AA AG CC
FAMILY1 ID3 0 0 0 -9 GG CC AG GG GG GA AG GC
FAMILY1 ID4 0 0 0 -9 GG CC GG GG GG AA GG GG
FAMILY1 ID5 0 0 0 -9 GG CC GG GG GG AA AG GC
FAMILY1 ID6 0 0 0 -9 GG CC GG GG GG AA AA CC
FAMILY1 ID7 0 0 0 -9 GG CC GG AG AA AA GG CC
FAMILY1 ID9 0 0 0 -9 GG CC GG AG AA AA GG CC
map数据:
$ cat a.map
1 snp1 0 55910
1 snp2 0 85204
1 snp3 0 122948
1 snp4 0 203750
1 snp5 0 312707
1 snp6 0 356863
1 snp7 0 400518
1 snp8 0 487423
2. 计算样本的杂合度--het
$ plink --file a --het
结果查看:
$ cat plink.het
FID IID O(HOM) E(HOM) N(NM) F
FAMILY1 ID1 6 5.32 8 0.2536
FAMILY1 ID2 5 5.32 8 -0.1195
FAMILY1 ID3 4 5.32 8 -0.4927
FAMILY1 ID4 8 5.32 8 1
FAMILY1 ID5 6 5.32 8 0.2536
FAMILY1 ID6 8 5.32 8 1
FAMILY1 ID7 7 5.32 8 0.6268
FAMILY1 ID9 7 5.32 8 0.6268
这里:
- FID,家系ID
- IID,个体ID
- O(HOM):观察到的纯合个数
- E(HOM):期望的纯合个数
- N(NM):没有缺失的SNP个数
- F:计算的值
其中F的计算方法:
F
=
O
−
E
N
−
E
F = \frac{O-E}{N-E}
F=N−EO−E
- O: O(HOM)
- E: E(HOM)
- N: N(NM)
可以这样认为,F值越小(包括负值),杂合度越高,F值越高,纯合度越高!
Excel对比
将ped文件,copy到Excel中,手动计算纯合和杂合的个数,进行统计:
3. 计算SNP位点杂合度
这里,使用参数--hardy
,可以给出位点的纯合和杂合个数:
$ plink --file a --hardy
结果:
$ cat plink.hwe
CHR SNP TEST A1 A2 GENO O(HET) E(HET) P
1 snp1 ALL(NP) C G 2/0/6 0 0.375 0.01538
1 snp2 ALL(NP) G C 0/1/7 0.125 0.1172 1
1 snp3 ALL(NP) A G 1/2/5 0.25 0.375 0.3846
1 snp4 ALL(NP) A G 0/2/6 0.25 0.2188 1
1 snp5 ALL(NP) A G 2/1/5 0.125 0.4297 0.07692
1 snp6 ALL(NP) G A 1/1/6 0.125 0.3047 0.2
1 snp7 ALL(NP) A G 1/3/4 0.375 0.4297 1
1 snp8 ALL(NP) G C 1/3/4 0.375 0.4297 1
- GENO,
2/0/6
,第一个是次等位基因纯合个数,第二个是杂合个数,第三个是主等位基因纯合个数 - O(HET),是杂合所在的比值
对比Excel结果:
4. 计算SNP位点的基因频率
$ plink --file a --freq
结果查看:
$ cat plink.frq
CHR SNP A1 A2 MAF NCHROBS
1 snp1 C G 0.25 16
1 snp2 G C 0.0625 16
1 snp3 A G 0.25 16
1 snp4 A G 0.125 16
1 snp5 A G 0.3125 16
1 snp6 G A 0.1875 16
1 snp7 A G 0.3125 16
1 snp8 G C 0.3125 16
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)