Mercurial > repos > xuebing > sharplabtool
view tools/new_operations/subtract_query.xml @ 0:9071e359b9a3
Uploaded
author | xuebing |
---|---|
date | Fri, 09 Mar 2012 19:37:19 -0500 |
parents | |
children |
line wrap: on
line source
<tool id="subtract_query1" name="Subtract Whole Dataset"> <description>from another dataset</description> <command interpreter="python">subtract_query.py $input1 $input2 $begin_col $end_col $output</command> <inputs> <param format="txt" name="input2" type="data" label="Subtract" help="Second dataset" /> <param format="txt" name="input1" type="data" label="from" help="First dataset" /> <param name="begin_col" type="data_column" data_ref="input1" force_select="False" label="Restrict subtraction between 'begin column'" /> <param name="end_col" type="data_column" data_ref="input1" force_select="False" label="and 'end column'" help="Specifying columns for restricting subtraction is available only for tabular formatted datasets" /> </inputs> <outputs> <data format="input" name="output" metadata_source="input1" /> </outputs> <tests> <!-- Subtract 2 non-tabular files with no column restrictions. --> <!-- Cannot figure out why this test won't pass, it works in real time... <test> <param name="input1" value="1.txt" /> <param name="input2" value="2.txt" /> <param name="begin_col" value="None" /> <param name="end_col" value="None" /> <output name="output" file="subtract-query-1.dat" /> </test> --> <!-- Subtract 2 tabular files with no column restrictions. --> <test> <param name="input1" value="eq-showbeginning.dat" /> <param name="input2" value="eq-showtail.dat" /> <param name="begin_col" value="None" /> <param name="end_col" value="None" /> <output name="output" file="subtract-query-2.dat" /> </test> <!-- Subtract 2 tabular files with column restrictions. --> <test> <param name="input1" value="eq-showbeginning.dat" /> <param name="input2" value="eq-removebeginning.dat" /> <param name="begin_col" value="c1" /> <param name="end_col" value="c3" /> <output name="output" file="subtract-query-3.dat" /> </test> <!-- Subtract a non-tabular file from a tabular file with no column restrictions. --> <test> <param name="input1" value="eq-showbeginning.dat" /> <param name="input2" value="2.txt" /> <param name="begin_col" value="None" /> <param name="end_col" value="None" /> <output name="output" file="subtract-query-4.dat" /> </test> </tests> <help> .. class:: infomark **TIP:** This tool complements the tool in the **Operate on Genomic Intervals** tool set which subtracts the intervals of two datasets. ----- **Syntax** This tool subtracts an entire dataset from another dataset. - Any text format is valid. - If both dataset formats are tabular, you may restrict the subtraction to specific columns **contained in both datasets** and the resulting dataset will include only the columns specified. - The begin column must be less than or equal to the end column. If it is not, begin column is switched with end column. - If begin column is specified but end column is not, end column will default to begin_column (and vice versa). - All blank and comment lines are skipped and not included in the resulting dataset (comment lines are lines beginning with a # character). - Duplicate lines are eliminated from both dataset prior to subtraction. If any duplicate lines were eliminated from the first dataset, the number is displayed in the resulting history item. ----- **Example** If this is the **First dataset**:: chr1 4225 19670 chr10 6 8 chr1 24417 24420 chr6_hla_hap2 0 150 chr2 1 5 chr10 2 10 chr1 30 55 chrY 1 20 chr1 1225979 42287290 chr10 7 8 and this is the **Second dataset**:: chr1 4225 19670 chr10 6 8 chr1 24417 24420 chr6_hla_hap2 0 150 chr2 1 5 chr1 30 55 chrY 1 20 chr1 1225979 42287290 Subtracting the **Second dataset** from the **First dataset** (including all columns) will yield:: chr10 7 8 chr10 2 10 Conversely, subtracting the **First dataset** from the **Second dataset** (including all columns) will result in an empty dataset. Subtracting the **Second dataset** from the **First dataset** (restricting to columns c1 and c2) will yield:: chr10 7 chr10 2 </help> </tool>