Repository 'vcfallelicprimitives'
hg clone https://toolshed.g2.bx.psu.edu/repos/devteam/vcfallelicprimitives

Changeset 0:3f4fefbc52c8 (2015-03-19)
Next changeset 1:f49b23b41a12 (2015-11-11)
Commit message:
Uploaded
added:
macros.xml
test-data/vcfallelicprimitives-test1.vcf
test-data/vcflib.vcf
tool_dependencies.xml
vcfallelicprimitives.xml
b
diff -r 000000000000 -r 3f4fefbc52c8 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Thu Mar 19 12:23:24 2015 -0400
b
@@ -0,0 +1,28 @@
+<macros>
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="8a5602bf07">vcflib</requirement>
+            <yield/>
+        </requirements>
+    </xml>
+    <xml name="stdio">
+        <stdio>
+            <exit_code range="1:" level="fatal" />
+        </stdio>
+    </xml>
+    <xml name="citations">
+         <citations>
+             <citation type="bibtex">
+@misc{Garrison2015,
+  author = {Garrison, Erik},
+  year = {2015},
+  title = {vcflib},
+  publisher = {GitHub},
+  journal = {GitHub repository},
+  url = {https://github.com/ekg/vcflib},
+}
+             </citation>
+         </citations>
+    </xml>
+    <token name="@IS_PART_OF_VCFLIB@">is a part of VCFlib toolkit developed by Erik Garrison (https://github.com/ekg/vcflib).</token>
+</macros>
b
diff -r 000000000000 -r 3f4fefbc52c8 test-data/vcfallelicprimitives-test1.vcf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/vcfallelicprimitives-test1.vcf Thu Mar 19 12:23:24 2015 -0400
b
@@ -0,0 +1,35 @@
+##fileformat=VCFv4.0
+##fileDate=20090805
+##source=myImputationProgramV3.1
+##reference=1000GenomesPilot-NCBI36
+##phasing=partial
+##INFO=<ID=NS,Number=1,Type=Integer,Description="Number of Samples With Data">
+##INFO=<ID=AN,Number=1,Type=Integer,Description="Total number of alleles in called genotypes">
+##INFO=<ID=AC,Number=.,Type=Integer,Description="Allele count in genotypes, for each ALT allele, in the same order as listed">
+##INFO=<ID=DP,Number=1,Type=Integer,Description="Total Depth">
+##INFO=<ID=AF,Number=.,Type=Float,Description="Allele Frequency">
+##INFO=<ID=AA,Number=1,Type=String,Description="Ancestral Allele">
+##INFO=<ID=DB,Number=0,Type=Flag,Description="dbSNP membership, build 129">
+##INFO=<ID=H2,Number=0,Type=Flag,Description="HapMap2 membership">
+##FILTER=<ID=q10,Description="Quality below 10">
+##FILTER=<ID=s50,Description="Less than 50% of samples have data">
+##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
+##FORMAT=<ID=GQ,Number=1,Type=Integer,Description="Genotype Quality">
+##FORMAT=<ID=DP,Number=1,Type=Integer,Description="Read Depth">
+##FORMAT=<ID=HQ,Number=2,Type=Integer,Description="Haplotype Quality">
+##ALT=<ID=DEL:ME:ALU,Description="Deletion of ALU element">
+##ALT=<ID=CNV,Description="Copy number variable region">
+##INFO=<ID=TYPE,Number=A,Type=String,Description="The type of allele, either snp, mnp, ins, del, or complex.">
+##INFO=<ID=LEN,Number=A,Type=Integer,Description="allele length">
+##INFO=<ID=Split primitives,Number=0,Type=Flag,Description="The allele was parsed using vcfallelicprimitives.">
+#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT NA00001 NA00002 NA00003
+19 111 . A C 9.6 . . GT:HQ 0|0:10,10 0|0:10,10 0/1:3,3
+19 112 . A G 10 . . GT:HQ 0|0:10,10 0|0:10,10 0/1:3,3
+20 14370 rs6054257 G A 29 PASS AF=0.5;DP=14;NS=3;DB;H2 GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,.
+20 17330 . T A 3 q10 AF=0.017;DP=11;NS=3 GT:GQ:DP:HQ 0|0:49:3:58,50 0|1:3:5:65,3 0/0:41:3:.,.
+20 1110696 . A G,T 67 PASS AF=0.333,0.667;LEN=1,1;TYPE=snp,snp;Split primitives GT 1|2 2|1 2|2
+20 1230237 . T . 47 PASS AA=T;DP=13;NS=3 GT:GQ:DP:HQ 0|0:54:.:56,60 0|0:48:4:51,51 0/0:61:2:.,.
+20 1234567 . G GA,GAC 50 PASS AC=3,1;LEN=1,2;TYPE=ins,ins;Split primitives GT 0|1 0|2 1|1
+20 1235237 . T . 0 . . GT 0/0 0|0 .
+X 10 . AC ATC,A 10 PASS LEN=1,1;TYPE=ins,del;Split primitives GT 0 0|2 0|1
+X 11 . C G 10 PASS LEN=1;TYPE=snp;Split primitives GT 0 0|0 0|1
b
diff -r 000000000000 -r 3f4fefbc52c8 test-data/vcflib.vcf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/vcflib.vcf Thu Mar 19 12:23:24 2015 -0400
b
@@ -0,0 +1,31 @@
+##fileformat=VCFv4.0
+##fileDate=20090805
+##source=myImputationProgramV3.1
+##reference=1000GenomesPilot-NCBI36
+##phasing=partial
+##INFO=<ID=NS,Number=1,Type=Integer,Description="Number of Samples With Data">
+##INFO=<ID=AN,Number=1,Type=Integer,Description="Total number of alleles in called genotypes">
+##INFO=<ID=AC,Number=.,Type=Integer,Description="Allele count in genotypes, for each ALT allele, in the same order as listed">
+##INFO=<ID=DP,Number=1,Type=Integer,Description="Total Depth">
+##INFO=<ID=AF,Number=.,Type=Float,Description="Allele Frequency">
+##INFO=<ID=AA,Number=1,Type=String,Description="Ancestral Allele">
+##INFO=<ID=DB,Number=0,Type=Flag,Description="dbSNP membership, build 129">
+##INFO=<ID=H2,Number=0,Type=Flag,Description="HapMap2 membership">
+##FILTER=<ID=q10,Description="Quality below 10">
+##FILTER=<ID=s50,Description="Less than 50% of samples have data">
+##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
+##FORMAT=<ID=GQ,Number=1,Type=Integer,Description="Genotype Quality">
+##FORMAT=<ID=DP,Number=1,Type=Integer,Description="Read Depth">
+##FORMAT=<ID=HQ,Number=2,Type=Integer,Description="Haplotype Quality">
+##ALT=<ID=DEL:ME:ALU,Description="Deletion of ALU element">
+##ALT=<ID=CNV,Description="Copy number variable region">
+#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT NA00001 NA00002 NA00003
+19 111 . A C 9.6 . . GT:HQ 0|0:10,10 0|0:10,10 0/1:3,3
+19 112 . A G 10 . . GT:HQ 0|0:10,10 0|0:10,10 0/1:3,3
+20 14370 rs6054257 G A 29 PASS NS=3;DP=14;AF=0.5;DB;H2 GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,.
+20 17330 . T A 3 q10 NS=3;DP=11;AF=0.017 GT:GQ:DP:HQ 0|0:49:3:58,50 0|1:3:5:65,3 0/0:41:3:.,.
+20 1110696 rs6040355 A G,T 67 PASS NS=2;DP=10;AF=0.333,0.667;AA=T;DB GT:GQ:DP:HQ 1|2:21:6:23,27 2|1:2:0:18,2 2/2:35:4:.,.
+20 1230237 . T . 47 PASS NS=3;DP=13;AA=T GT:GQ:DP:HQ 0|0:54:.:56,60 0|0:48:4:51,51 0/0:61:2:.,.
+20 1234567 microsat1 G GA,GAC 50 PASS NS=3;DP=9;AA=G;AN=6;AC=3,1 GT:GQ:DP 0/1:.:4 0/2:17:2 1/1:40:3
+20 1235237 . T . . . . GT 0/0 0|0 ./.
+X 10 rsTest AC A,ATG 10 PASS . GT 0 0/1 0|2
b
diff -r 000000000000 -r 3f4fefbc52c8 tool_dependencies.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_dependencies.xml Thu Mar 19 12:23:24 2015 -0400
b
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<tool_dependency>
+    <package name="vcflib" version="8a5602bf07">
+        <repository changeset_revision="7e67466b033e" name="package_vcflib_8a5602bf07" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu" />
+    </package>
+</tool_dependency>
b
diff -r 000000000000 -r 3f4fefbc52c8 vcfallelicprimitives.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/vcfallelicprimitives.xml Thu Mar 19 12:23:24 2015 -0400
b
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="utf-8"?>
+<tool id="vcfallelicprimitives" name="VcfAllelicPrimitives:" version="0.0.3">
+    <description>Split alleleic primitives (gaps or mismatches) into multiple VCF lines</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"></expand>
+    <expand macro="stdio" />
+    <command>
+        cat "${input}" | vcfallelicprimitives 
+            ${m_option} 
+            -t "${t_option}"
+     -L "${max_length}" 
+            $keep_info 
+            $keep_geno > "${out_file1}"
+    </command>
+    <inputs>
+        <param format="vcf" name="input" type="data" label="Select VCF dataset"/>
+        <param name="m_option" type="boolean" checked="false" truevalue="--use-mnps" falsevalue="" label="Retain MNPs as separate events" help="--use-mnps option"/>
+        <param name="t_option" size="20" type="text" value="Split primitives" label="Tag records which are split apart of a complex allele with this flag. " help="--tag-parsed option"/>
+ <param name="max_length" type="integer" size="4" value="200" label="Do not manipulate records in which either the ALT or REF is longer than (bp)" help="--max-length option"/>
+        <param name="keep_info" type="boolean" truevalue="--keep-info" falsevalue="" checked="False" 
+            label="Maintain site and allele-level annotations when decomposing" 
+            help="Note that in many cases, such as multisample VCFs, these won't be valid post-decomposition.  For biallelic loci in single-sample VCFs, they should be usable with caution. (--keep-info)"/>
+        <param name="keep_geno" type="boolean" truevalue="--keep-geno" falsevalue="" checked="False" 
+            label="Maintain genotype-level annotations when decomposing" 
+            help="Similar caution should be used for this as for --keep-info. (--keep-geno)"/>
+    </inputs>
+    <outputs>
+        <data format="vcf" name="out_file1" label="${tool.name} on ${on_string}" />
+    </outputs>
+    <tests>
+        <test>
+            <param name="input" value="vcflib.vcf"/>
+            <output name="out_file1" file="vcfallelicprimitives-test1.vcf"/>
+        </test>
+    </tests>
+    <help>
+
+If multiple alleleic primitives (gaps or mismatches) are specified in a single VCF record, this tools splits the record into multiple lines, but drops all INFO fields.  
+"Pure" MNPs are split into multiple SNPs unless the -m flag is provided. 
+Genotypes are phased where complex alleles have been decomposed, provided genotypes in the input.
+
+The options are::
+
+    -m, --use-mnps          Retain MNPs as separate events (default: false).
+    -t, --tag-parsed FLAG   Tag records which are split apart of a complex allele with this flag.
+    -L, --max-length LEN    Do not manipulate records in which either the ALT or
+                            REF is longer than LEN (default: 200).
+    -k, --keep-info         Maintain site and allele-level annotations when decomposing.
+                            Note that in many cases, such as multisample VCFs, these won't
+                            be valid post-decomposition.  For biallelic loci in single-sample
+                            VCFs, they should be usable with caution.
+    -g, --keep-geno         Maintain genotype-level annotations when decomposing.  Similar
+                            caution should be used for this as for --keep-info.
+
+----
+
+Vcfallelicprimitives @IS_PART_OF_VCFLIB@
+    </help>
+    <expand macro="citations" />
+</tool>