进行重测序或者GBS时,hapmap
是比较常见的格式,生信中经常使用这种格式。但是在GWAS和GS中,数据筛选,质控,构建矩阵都是使用的plink
的格式。本文介绍如何tassel
和vcftools
两个软件,将hapmap
格式的数据转化为plink
格式的数据。
环境:linux系统
首先,要安装anaconda
或者miniconda
,然后使用conda install
进行软件安装, 安装conda方法:https://docs.anaconda.com/anaconda/install/linux/
tassel的安装方法,使用git将文件copy到本地,然后将里面的内容(可执行文件) copy到home下的bin文件中, 不用设置路径了。
git clone https://bitbucket.org/tasseladmin/tassel-5-standalone.git
https://anaconda.org/bioconda/vcftools
conda install -c bioconda vcftools
https://anaconda.org/r/r
conda install -c r r
genotype.hmp.txt
行头:
rs# alleles chrom pos strand assembly# center protLSID assayLSID panelLSID QCcode sample1 sample2 ...
内容:
rs# alleles chrom pos strand assembly# center protLSID assayLSID panelLSID QCcode Sample_YCX334/12Sample_ya>
1:1151 C 1 1151 + NA NA NA NA NA NA N N N C C C N C>
1:1203 T/C 1 1203 + NA NA NA NA NA NA T N T N T T T T>
1:1249 A/C 1 1249 + NA NA NA NA NA NA A N A N A A A A>
1:1266 G/A 1 1266 + NA NA NA NA NA NA G N G G G G G N>
1:1277 T/C 1 1277 + NA NA NA NA NA NA T T T T T T T N>
1:1325 C/T 1 1325 + NA NA NA NA NA NA C N N N N N C N>
1:1335 G/T 1 1335 + NA NA NA NA NA NA G G G G G G G G>
1:1362 G/A 1 1362 + NA NA NA NA NA NA G G G G G G G G>
ped
和map
plink格式是基因组选择中经常用到的文件类型, plink软件功能强大,运行速度快。
.map格式
格式说明链接: http://zzz.bwh.harvard.edu/plink/data.shtml#map
map格式的文件, 主要是图谱文件信息, 主要包括染色体名称, 所在的染色体和所在染色体的坐标.
1, map文件没有行头
2, map文件包括四列: 染色体, SNP名称, SNP位置, 碱基对坐标
3, 如果只有SNP名称, 可以手动构建map文件, 第二列为SNP名称, 其它三列为0即可.
Example:
1 snp1 0 1
1 snp2 0 2
1 snp3 0 3
.ped格式
格式说明链接:http://zzz.bwh.harvard.edu/plink/data.shtml#ped
bed格式的文件, 主要包括SNP的信息, 包括个体ID, 系谱信息, 表型和SNP的分型信息.
1, 数据没有行头, 空格或者tab隔开的文件 2, 必须要有六列, 包括系谱信息, 表型信息
3, 上面六列, 必须要有, 如果没有相关数据, 用0表示.
Example:
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
将下面文件保存为:hmp.txt
rs# alleles chrom pos strand assembly# center protLSID assayLSID panelLSID QCcode Box302.YX.2017.06.002 Box302.YX.2017.06.003 Box302.YX.2017.06.004 Box302.YX.2017.06.005 Box302.YX.2017.06.11 Box302.YX.2017.06.013 Box302.YX.2017.06.018 Box302.YX.2017.06.019 Box302.YX.2017.06.020 Box302.YX.2017.06.21
10000235 A/C 6 80388997 + NA NA NA NA NA NA AC AA AC AA AA AA AA AA AC AC
10000345 G/A 8 17865885 + NA NA NA NA NA NA GG GG AA GG GG GG GG AA AA GG
10004575 G/T 7 32792755 + NA NA NA NA NA NA GG GG GG GG GG GT GG GG GG GG
10006974 T/C 1 14418789 + NA NA NA NA NA NA CT CC TT CT CT CT CT TT TT CC
10006986 A/G 2 76416246 + NA NA NA NA NA NA AA AA AA AA AA AG AG GG GG AA
10007074 G/C 14 105043500 + NA NA NA NA NA NA GG GC GC GC GC GC GC GC GG GC
10007097 C/A 15 118863849 + NA NA NA NA NA NA CC CC CC CC CC CC AC CC CC AC
10007113 G/A 9 127852320 + NA NA NA NA NA NA GG GG GG AG GG GG AG AA AA GG
10007117 C/T 2 150034851 + NA NA NA NA NA NA CC CT CC CT CT CT TT CC CT CT
10007153 A/C 6 145256960 + NA NA NA NA NA NA AA AC AA AC AA AA AA AC AA AA
10007668 G/A 10 19391507 + NA NA NA NA NA NA GG GG GG AG AG AA GG GG GG GG
12784072 G/A 17 55229968 + NA NA NA NA NA NA AG AG AG GG AG GG GG AG AA GG
12784632 T/C 6 28132948 + NA NA NA NA NA NA TT TT TT TT TT TT TT CT TT TT
12784633 T/C 6 28132948 + NA NA NA NA NA NA TT TT TT TT TT TT TT CT TT TT
12784634 T/C 6 28132948 + NA NA NA NA NA NA TT TT TT TT TT TT TT CT TT TT
12784635 T/C 6 28132948 + NA NA NA NA NA NA TT TT TT TT TT TT TT CT TT TT
12784636 G/A 1 160773437 + NA NA NA NA NA NA AG GG GG GG AG AG GG AG AG GG
12784637 G/A 1 160773437 + NA NA NA NA NA NA AG GG GG GG AG AG GG AG AG GG
12784638 G/A 1 160773437 + NA NA NA NA NA NA AG GG GG GG AG AG GG AG AG GG
12784639 G/A 1 160773437 + NA NA NA NA NA NA AG GG GG GG AG AG GG AG AG GG
./run_pipeline.pl -SortGenotypeFilePlugin -inputFile hmp.txt -outputFile test.sort.hmp.txt -fileType Hapmap
生成一个test.sort.hmp.txt
5.2 生成 vcf4.0 格式的文件
./run_pipeline.pl -fork1 -h test.sort.hmp.txt -export -exportType VCF
生成一个test.vcf
文件
plink --vcf test.vcf --recode --out t1
map和ped数据:
代码汇总:
如果用的是配置好的Linux系统,只需要下载tassel软件,然后进入文件夹:
git clone https://bitbucket.org/tasseladmin/tassel-5-standalone.git
cd tassel-5-standalone/
# 把hapmap放到该文件夹中,命名为hmp.txt文件
./run_pipeline.pl -SortGenotypeFilePlugin -inputFile hmp.txt -outputFile test.sort.hmp.txt -fileType Hapmap
./run_pipeline.pl -fork1 -h test.sort.hmp.txt -export -exportType VCF
plink --vcf test.vcf --recode --out t1
# 生成的t1.ped 和 t1.map为plink的结果文件