导出为 TSV 格式
在命令行中,使用如下指令将 GTB 文件导出为 TSV 格式:
java -jar gbc.jar gtb2tsv <input> [output] [options]
- 未设置
output
时,将使用标准输出导出到终端。 output
以.gz
或.bgz
结尾 (作为扩展名) 时,输出文件使用 bgzip 进行压缩,其他情况输出为文本格式。
GBC 提供了可定制化的 TSV 输出格式,用于便捷地将 GTB 格式转换为各种行组织的变异记录的文本格式。使用该功能时,输出的数据不包含基因型信息,但包含等位基因频数 (AC)、有效等位基因计数 (AN)、等位基因频率 (AF)。如需定制输出格式,使用 --field
指定输出的字段,使用 --rename-field
重命名字段。
[!NOTE|label:示例程序|style:callout]
使用 GBC 输出示例文件
https://pmglab.top/gbc/download/assoc.hg19.gtb
到本地,并设置以下参数:
- 等位基因频率在 [0.05, 0.95] 之间;
- 可变等位基因数 3。
完成该任务的命令行指令如下:
# 在终端直接运行 java -jar gbc.jar gtb2tsv https://pmglab.top/gbc/download/assoc.hg19.gtb \ --seq-af 0.05-0.95 --allele-num 3- # 使用 docker 运行 docker run -v `pwd`:`pwd` -w `pwd` --rm -it -m 4g gbc \ gtb2tsv https://pmglab.top/gbc/download/assoc.hg19.gtb \ --seq-af 0.05-0.95 --allele-num 3-
程序参数
语法: gtb2tsv <input> [output] [options]
Java-API: edu.sysu.pmglab.gbc.toolkit.TSVExporter
关于: 从 GTB 文件中解压和提取变异位点为 TSV 或 TSV.GZ 格式.
参数:
--chromosome 指定染色体标签文件.
格式: --chromosome <file>
--threads,-t 设置并行线程数.
默认值: 4
格式: --threads <int>
子集选择参数:
--field,-f 从 GTB 文件中选择要输出到 TSV 文件中的字段 (默认导出所有字段).
格式: --field <string>,<string>,...
--no-gt 不加载基因型, 此参数下输出文件将不包含 AC, AN, AF 字段.
--pos,-p 提取指定坐标的变异位点.
格式: --pos-index <chr>:<pos>,<pos>,... ... (>= 1)
--pos-range,-pr 提取指定坐标范围的变异位点.
格式: --pos-range <chr>:<minPos>-<maxPos>,... (>= 1)
--index-range,-ir 按照索引提取变异位点.
格式: --index-range <minIndex>-<maxIndex> (>= 0)
--rename-field 直接为 *.gtb 文修改字段名称.
格式: --rename-field <old>=<new> ...
编辑元信息参数:
--add-meta 添加元信息到输出文件.
格式: --add-meta <key>=<value> <key>=<value> ...
--rm-meta 移除所有元信息.
--rm-duplicate-meta 移除所有重复的元信息 (重复条目仅保留一条).
质量控制参数:
--allele-num 排除可变等位基因数不在 [minAlleNum, maxAlleNum] 范围的变异位点.
默认值: 0-15
格式: --allele-num <minAlleleNum>-<maxAlleleNum> (0 ~ 255)
--seq-qual 排除最低总体测序质量分数 (Phred Quality Score) < minQual 的变异位点.
默认值: 30.0
格式: --seq-qual <minQual> (>= 0.0)
--seq-fs 排除整体链偏差 Phred-scaled p-value (使用 Fisher 精确检验) > maxFs 的变异位点.
格式: --seq-fs <maxFs> (>= 0.0)
--seq-mq 排除最小总体映射质量评分 (Mapping Quality Score) < minMq 的变异位点.
默认值: 20.0
格式: --seq-mq <minMq> (>= 0.0)
--seq-info 排除 INFO 中包含/不包含 (以 ^ 开头) 指定字符串的变异位点.
格式: --seq-info <string> <string> ...
--seq-ac 排除替代等位基因计数 (AC) 不在 [minAc, maxAc] 范围内的变异位点.
格式: --seq-ac <minAc>-<maxAc> (>= 0)
--seq-af 排除替代等位基因频率 (AF) 不在 [minAf, maxAf] 范围内的变异位点.
格式: --seq-af <minAf>-<maxAf> (0.0 ~ 1.0)
--seq-an 排除非缺失等位基因数 (AN) 不在 [minAn, maxAn] 范围内的变异位点.
默认值: 1-
格式: --seq-an <minAn>-<maxAn> (>= 0)
--field-condition 根据指定的补充字段的值提取变异位点. 对于数值字段, 'condition' 格式为 'minValue-maxValue'; 对于其他格式, 'condition'是由 ',' 分隔的多个可选值.
格式: --field-condition <field>=<condition> <field>=<condition> ...
API 工具
将 GTB 文件转换为 TSV 文件的 API 工具是 edu.sysu.pmglab.gbc.TSVExporter,使用示例如下:
TSVExporter.of("https://pmglab.top/gbc/download/assoc.hg19.gtb")
.addVariantFilter(new GTBFilter().filterByAF(new Interval<>(0.05f, 0.95f)).filterByAlleleNum(new Interval<>(3, null)))
.submit();