vcf 文件如何修改染色体修改样本名称提取样本
  AW7bYnJS1SzK 2023年11月02日 27 0


大家好,我是邓飞。

对于vcf文件和plink文件是经常用的文件,对于基因型数据的处理,一般分为:

  • 数据质控
  • 数据提取
  • 染色体修改名称
  • 样本修改名称

今天介绍一下vcf文件的三个处理方法:

  • 1,染色体修改
  • 2,样本名称修改
  • 3,样本提取

用到的软件是bcftools,用到的系统是Linux

1. 数据描述

数据使用GWAS-Cookbook中的GWASdat1中的数据,将数据变为vcf格式。

将plink的二进制文件,变为vcf的代码:

plink --bfile ../../gwas_cookbook/GWAS-dat1/1_QC_GWAS/HapMap_3_r3_1 --recode vcf-iid --out test1

vcf 文件如何修改染色体修改样本名称提取样本_bc


vcf预览:

vcf 文件如何修改染色体修改样本名称提取样本_bc_02

2. vcf文件修改染色体名称

vcf 文件如何修改染色体修改样本名称提取样本_bc_03


整理染色体修改对应关系:

awk '{print $1}' HapMap_3_r3_1.bim |sort |uniq >chr.txt
awk '{print $1,"chr"$1}' chr.txt >chr_rename.txt

整理好的对应关系:

$ cat chr_rename.txt 
1 chr1
10 chr10
11 chr11
12 chr12
13 chr13
14 chr14
15 chr15
16 chr16
17 chr17
18 chr18
19 chr19
2 chr2
20 chr20
21 chr21
22 chr22
23 chr23
25 chr25
3 chr3
4 chr4
5 chr5
6 chr6
7 chr7
8 chr8
9 chr9

代码:

bcftools annotate --rename-chrs chr_rename.txt -Oz -o test2.vcf.gz test1.vcf 
gzip -d test2.vcf.gz 
less -S test2.vcf

修改后的结果:

vcf 文件如何修改染色体修改样本名称提取样本_数据_04


可以看到,已经修改过了。

3. 修改样本的名称

样本对应关系txt文件整理:

awk '{print $2}' HapMap_3_r3_1.fam |head >sname.txt
awk '{print $1,"new_"$1}' sname.txt >sname_change.txt

对应关系文件内容:

$ head sname_change.txt 
NA06989 new_NA06989
NA11891 new_NA11891
NA11843 new_NA11843
NA12341 new_NA12341
NA12739 new_NA12739
NA10850 new_NA10850
NA06984 new_NA06984
NA12877 new_NA12877
NA12275 new_NA12275
NA06986 new_NA06986

代码:

bcftools reheader -s sname_change.txt test1.vcf -o test3.vcf.gz

修改后的vcf:

vcf 文件如何修改染色体修改样本名称提取样本_数据_05

4. 提取vcf样本

代码:

bcftools view -S sname.txt test1.vcf -Ov > test4.vcf

提取后的文件:

vcf 文件如何修改染色体修改样本名称提取样本_处理方法_06

搞定!


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
AW7bYnJS1SzK