杂合度质控

1.为什么要进行杂合度质控?

对于一般自然群体,基因型个体的杂合度过高或者过低,都不正常,则需根据杂合度进行过滤。偏差可能表明样品受到污染,近亲繁殖。对于样品杂合率平均值中偏离±3 SD的个体建议删除。

2.计算每个位点的杂合度

利用参数 --het 计算

plink --bfile a --het --out R_check

#R语言部分
> het <- read.table(file = "R_check.het",header = T)
> head(het)
   FID     IID O.HOM. E.HOM.   N.NM.         F
1 1328 NA06989 693389 694100 1071000 -0.001814
2 1377 NA11891 688282 686700 1059595  0.004153
3 1349 NA11843 693237 694900 1072368 -0.004525
4 1330 NA12341 691956 693100 1069484 -0.002983
5 1444 NA12739 683553 682100 1052510  0.003929
6 1344 NA10850 698210 694600 1071797  0.009609

#het$HET_RATE在het数据框添加新的一列
> het$HET_RATE <- (het$"N.NM." - het$"O.HOM.")/het$"N.NM."
> head(het)
   FID     IID O.HOM. E.HOM.   N.NM.         F  HET_RATE
1 1328 NA06989 693389 694100 1071000 -0.001814 0.3525780
2 1377 NA11891 688282 686700 1059595  0.004153 0.3504292
3 1349 NA11843 693237 694900 1072368 -0.004525 0.3535456
4 1330 NA12341 691956 693100 1069484 -0.002983 0.3530001
5 1444 NA12739 683553 682100 1052510  0.003929 0.3505496
6 1344 NA10850 698210 694600 1071797  0.009609 0.3485613

备注:杂合度--het,没有过滤的函数,只能通过编程去提取ID,然后用--remove去实现。

查看哪些个体在3倍标准差以外:

> help("subset")
> het_fail = subset(het, (het$HET_RATE < mean(het$HET_RATE)-3*sd(het$HET_RATE)) | (het$HET_RATE > mean(het$HET_RATE)+3*sd(het$HET_RATE)))
> head(het_fail)
     FID     IID O.HOM. E.HOM.   N.NM.       F  HET_RATE
81  1330 NA12342 703418 690700 1065708 0.03404 0.3399524
106 1459 NA12874 709095 694900 1072301 0.03759 0.3387165
> het_fail
     FID     IID O.HOM. E.HOM.   N.NM.       F  HET_RATE
81  1330 NA12342 703418 690700 1065708 0.03404 0.3399524
106 1459 NA12874 709095 694900 1072301 0.03759 0.3387165
 ##保存结果
> write.table(het_fail,"het_fail.qc.txt",row.names = F)

R语言使用subset函数筛选dataframe数据行(样本、Selecting Observations)

最终筛选出2个杂合度不符合条件的ID(NA12342,NA12874)

3.剔除异常数据

去掉这些个体,先对数据进行清洗,去掉引号,然后提取家系和个体ID

然后利用 -- remove 参数删除这2个体 

 

已经删除了这2个个体,剩余163个个体。 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值