gtool:操作genotype data的利器

2019-12-19 11:29:44 浏览数 (1)

有很多的软件可以进行GWAS分析,不同软件要求的输入文件格式不尽相同,最常见的文件格式就是plink中的ped/map文件,除此之外还有gen/sample文件格式。

分型文件保存的是样本中SNP位点的分型结果,有样本和SNP分型结果两类信息,首先来看下ped/map系统,ped文件主要用于记录样本的分型结果和其他的表型信息,内容示意如下

每列之间用空格分隔,第一列为样本对应的family id, 第二列为样本的id, 第三列表示父亲样本的id, 第四列表示母亲样本的id, 第五列表示性别,1是男性,2是女性,第六列表示样本的表型信息,没有就用0填充,后面的每一列代表一个snp位点的分型结果。

map文件用于记录SNP位点的信息,内容如下所示

每列之间用空格分隔,第一列为snp位点所在的染色体名称,第二列为snp id,第三列是snp位点的连锁距离,没有的话用0表示,第四列为snp位点在染色体上的位置。

在ped/map文件系统中,ped文件表示样本的家系关系和分型结果,map文件表示snp位点的metadta, 再来看下gen/sample系统,gen文件的内容示意如下

每列之间用空格分隔,第一列为snp位点所在的染色体名称,第二列为snp id,第三列为染色体的位置,第四列为不同样本中该位点的分型结果,0代表ref allle, 1代表alt allel, 每两列对应一个样本。sample文件内容如下所示

前两行内容固定,后续每一行代表一个样本,,miss表示缺失分型结果的位点比例,以上只是该文件最基本内容的展示,还可以有更多的列,用来描述样本的表型信息。gen/sample系统的命名更加直观,gen就是genotype的简写,表示SNP位点分型的结果,sample则表示样本的信息。

在实际操作中,我们经常要做的就是格式转换,文件格式的转换是非常繁琐却又必须要掌握的一项技能,gtool是一款专门针对genotype data数据进行格式化的小工具,网址如下

https://www.well.ox.ac.uk/~cfreeman/software/gwas/gtool.html

经典的应用场景如下

  1. 从大的分型结果中提取子集
  2. 从ped格式转换成gen格式
  3. 从gen格式转换成ped格式
  4. 合并多个分型结果
  5. 对分型结果的正负链进行校正

每个功能对应了一个运行模式,具体用法如下

1. Subset

从分型结果中提取子集,对样本和SNP进行筛选,对应的运行模式为-S, 基本用法如下

代码语言:javascript复制
gtool -S 
--g  input.gen 
--s  input.sample 
--og filter.gen 
--os filter.sample 
--sample_id filter.sample.id.txt 
--inclusion filter.snp.id.txt

-g-s指定输入的genotype data, --og--os指定输出的genotype data, --sample指定需要保留的样本id, --inclusion指定需要保留的snp id。

2. PED convert to GEN

将ped格式转换为gen格式,对应的运行模式为-P, 基本用法如下

代码语言:javascript复制
gtool -P 
--ped input.ped 
--map input.map 
--og  out.gen 
--os  out.sample
3. GEN convert to PED

将gen格式转换为ped格式,对应的运行模式为-G, 基本用法如下

代码语言:javascript复制
gtool -G 
--g   input.gen 
--s   input.sample 
--ped out.ped 
--map out.map 
4. Merge

合并多个分型结果,对应的运行模式为-M, 基本用法如下

代码语言:javascript复制
gtool -M 
--g input1.gen input2.gen 
--s input1.sample input2.sample 
--log merge.log
5. Orient

将SNP位点统一调整成正链,对应的运行模式为-O, 基本用法如下

代码语言:javascript复制
gtool -O 
--g input.gen 
--strand input.strand 
--og output.gen 
--log orient.log

--strand参数指定一个文件,描述SNP位点的方向,是一个空格分隔的两列文件,第一列为SNP在染色体上的位置,第二列为对应的正负链信息,内容示意如下

对于负链的SNP位点会进行反转,在显示allel对应的碱基时以正链进行展示。以上就是gtool的基本用法,更多细节参数请参考官方文档。

0 人点赞