| 
62
 | 
     1 <tool name="Downsample SAM" id="picard_DownsampleSam" version="1.106.0">
 | 
| 
 | 
     2     <!-- found on https://bitbucket.org/bwlang/galaxy-dist/src/ca5ded2e18a9ef802c31429e3cb861e8775b24d0/tools/picard/picard_DownsampleSam.xml -->
 | 
| 
 | 
     3    <description>Down-sample a file to retain a subset of the reads</description>
 | 
| 
 | 
     4    <requirements><requirement type="package" version="1.106.0">picard</requirement></requirements>
 | 
| 
 | 
     5   <command interpreter="python">
 | 
| 
 | 
     6     picard_wrapper.py
 | 
| 
 | 
     7       --input=$inputFile
 | 
| 
 | 
     8       --output=$outFile
 | 
| 
 | 
     9       --probability=$probability
 | 
| 
 | 
    10       --seed=$seed
 | 
| 
 | 
    11       -j "\$JAVA_JAR_PATH/DownsampleSam.jar"
 | 
| 
 | 
    12   </command>
 | 
| 
 | 
    13   <inputs>
 | 
| 
 | 
    14     <param format="sam" name="inputFile" type="data" label="SAM dataset to be downsampled"
 | 
| 
 | 
    15            help="If empty, upload or import a SAM dataset." />
 | 
| 
 | 
    16     <param name="probability" type="float" size="5" label="Probability (between 0 and 1) that any given read will be kept" help="specify 1 to keep all reads, 0.1 to keep 10% of the reads" value="1" />
 | 
| 
 | 
    17     <param name="seed" type="integer" size="5" label="Random seed value" help="(same seed + same probability = same set of reads kept)" value="1" />
 | 
| 
 | 
    18   </inputs>
 | 
| 
 | 
    19   <outputs>
 | 
| 
 | 
    20     <data name="outFile" format="sam" label="${tool.name} on ${on_string}">
 | 
| 
 | 
    21     </data>
 | 
| 
 | 
    22   </outputs>
 | 
| 
 | 
    23   <tests>
 | 
| 
 | 
    24     <test>
 | 
| 
 | 
    25       <param name="inputFile" value="cleansamtestinput.sam" />
 | 
| 
 | 
    26       <param name="probability" value="0.1" />
 | 
| 
 | 
    27       <param name="seed" value="2" />
 | 
| 
 | 
    28       <output name="outFile" file="downsamplesamoutput.sam" ftype="sam" />
 | 
| 
 | 
    29     </test>
 | 
| 
 | 
    30   </tests>
 | 
| 
 | 
    31   <help>
 | 
| 
 | 
    32 
 | 
| 
 | 
    33 .. class:: infomark
 | 
| 
 | 
    34 
 | 
| 
 | 
    35 **Purpose**
 | 
| 
 | 
    36 
 | 
| 
 | 
    37 Randomly down-sample a SAM or BAM file to retain a random subset of the reads. Mate-pairs are either both kept or both discarded. Reads marked as not primary alignments are all discarded. Each read is given a probability P of being retained - results with the exact same input in the same order and with the same value for RANDOM_SEED will produce the same results.
 | 
| 
 | 
    38 
 | 
| 
 | 
    39 **Picard documentation**
 | 
| 
 | 
    40 
 | 
| 
 | 
    41 This is a Galaxy wrapper for DownsampleSam, a part of the external package Picard-tools_.
 | 
| 
 | 
    42 
 | 
| 
 | 
    43  .. _Picard-tools: http://www.google.com/search?q=picard+samtools
 | 
| 
 | 
    44 
 | 
| 
 | 
    45 ------
 | 
| 
 | 
    46 
 | 
| 
 | 
    47 .. class:: warningmark
 | 
| 
 | 
    48 
 | 
| 
 | 
    49 **Warning on SAM/BAM quality**
 | 
| 
 | 
    50 
 | 
| 
 | 
    51 Many SAM/BAM files produced externally and uploaded to Galaxy do not fully conform to SAM/BAM specifications. Galaxy deals with this by using the **LENIENT**
 | 
| 
 | 
    52 flag when it runs Picard, which allows reads to be discarded if they're empty or don't map. This appears
 | 
| 
 | 
    53 to be the only way to deal with SAM/BAM that cannot be parsed.
 | 
| 
 | 
    54 
 | 
| 
 | 
    55 
 | 
| 
 | 
    56   </help>
 | 
| 
 | 
    57 </tool> |