通常我们基于基因型数据进行群体分析或者是定位分析,这些分析涉及的软件很多,他们的输入文件格式不尽相同,我们常常需要在多种格式之间进行转换。
主要涉及的格式有:vcf、hapmap、plink,其中plink涉及的文件类型较多,分类见下图。
01
—
文件格式介绍
plink的数据格式有两套,每套各自的前缀名称相同,一套后缀为.bed、.bin和.fam,另一套后缀为.map和.ped。
02
—
如何进行文件转化
1. vcf <-> hapmap:tassel软件
run_pipeline.pl -Xms10g -Xmx100g -vcf in.vcf.gz -sortPositions -export out.hmp.txt -exportType HapmapDiploid
run_pipeline.pl -SortGenotypeFilePlugin -inputFile hmp.txt -outputFile test.sort.hmp.txt -fileType Hapmap
run_pipeline.pl -Xmx100g -fork1 -h test.sort.hmp.txt -export -exportType VCF
2. vcf <-> plink :plink软件
# 有bed/bim/fam文件的时候转换,得到out_vcf.vcf
# 如果是ped和fam转换,把-bfile换成-file
# plink 1.9
plink --bfile input --recode vcf-iid --out out_vcf
# plink 2.0
plink --bfile input --export vcf --out out_vcf
# vcf转plink的bed/bim/fam
plink --vcf out_vcf.vcf --make-bed --out out
# vcf转plink的ped/map
plink --vcf out_vcf.vcf --recode --out out --double-id
3. plink <-> hapmap:tassel软件
# hapmap转plink
# 还没有找到直接转的方法,目前通过先转成vcf再通过vcf转换方法
# 转vcf得到sort.vcf
run_pipeline.pl -SortGenotypeFilePlugin -inputFile hmp.txt -outputFile sort.hmp.txt -fileType Hapmap
run_pipeline.pl -Xmx100g -fork1 -h sort.hmp.txt -export -exportType VCF
# 转plink的bed/bim/fam
plink --vcf out.vcf --make-bed --out out
# plink转hapmap
# 注意plink读入方式:-plink -ped input.ped -map input.map
run_pipeline.pl -Xms10g -Xmx100g -plink -ped input.ped -map input.map -sortPositions -export out.hmp.txt -exportType HapmapDiploid
4. plink <-> plink
plink --file test --recode --out test1
plink --file test --make-bed --out test2
更多生物信息视频课程: