Repository revision
16:953b4821b183

Repository 'umi_tools_whitelist'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist

UMI-tools whitelist tool metadata
Miscellaneous
Extract cell barcodes from FASTQ files
umi_tools_whitelist
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/1.1.2+galaxy2
1.1.2+galaxy2
None
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/1.1.2+galaxy2 (this tool)
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/1.1.2+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/1.1.2+galaxy0
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/0.5.5.0
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/0.5.3.1
toolshed.g2.bx.psu.edu/repos/iuc/umi_tools_whitelist/umi_tools_whitelist/0.5.3.0
umi_tools_whitelist
Requirements (dependencies defined in the <requirements> tag set)
name version type
umi_tools 1.1.2 package
Additional information about this tool
#import json
        
        #set $gz = False
        #if $input_type_cond.input_type == 'single':
            #if $input_type_cond.input_read1.is_of_type("fastq.gz", "fastqsanger.gz"):
                ln -s '$input_type_cond.input_read1' input_single.gz &&
                #set $gz = True
            #else
                ln -s '$input_type_cond.input_read1' input_single.txt &&
            #end if
        #elif $input_type_cond.input_type == 'paired':
            #if $input_type_cond.input_read1.is_of_type("fastq.gz", "fastqsanger.gz"):
                ln -s '$input_type_cond.input_read1' input_read1.gz &&
                ln -s '$input_type_cond.input_read2' input_read2.gz &&
                #set $gz = True
            #else
                ln -s '$input_type_cond.input_read1' input_read1.txt &&
                ln -s '$input_type_cond.input_read2' input_read2.txt &&
            #end if
        #else  ## paired_collection
            #if $input_type_cond.input_readpair.forward.is_of_type("fastq.gz", "fastqsanger.gz"):
                ln -s '$input_type_cond.input_readpair.forward' input_read1.gz &&
                ln -s '$input_type_cond.input_readpair.reverse' input_read2.gz &&
                #set $gz = True
            #else
                ln -s '$input_type_cond.input_readpair.forward' input_read1.txt &&
                ln -s '$input_type_cond.input_readpair.reverse' input_read2.txt &&
            #end if
        #end if
    
        umi_tools whitelist
            
            
        ## fastq barcode extraction options:
        --extract-method='$extract_method_cond.extract_method'
        --bc-pattern='$input_type_cond.bc_pattern'
        #if $input_type_cond.input_type != 'single' and $input_type_cond.bc_pattern2 != ''
            --bc-pattern2='$input_type_cond.bc_pattern2'
        #end if
        #if $extract_method_cond.extract_method == 'string'
            $extract_method_cond.prime3
        #else if $extract_method_cond.filtered_out_bool
            #if $input_type_cond.input_type == 'single':
                --filtered-out='$filtered_out'
            #else if $input_type_cond.input_type == 'paired':
                --filtered-out='$filtered_out'
                --filtered-out2='$filtered_out_paired'
            #else
                --filtered-out='$filtered_out_paired_collection.forward'
                --filtered-out2='$filtered_out_paired_collection.reverse'
            #end if
        #end if
        $ignore_read_pair_suffixes
     

            --subset-reads='$subset_reads'
            $allow_threshold_error
            #if $ed_above_threshold
                --ed-above-threshold=$ed_above_threshold
            #end if
            --knee-method='$knee_method'
            #if $input_type_cond.input_type == 'single':
                #if $gz:
                    --stdin=input_single.gz
                #else
                    --stdin=input_single.txt
                #end if
            #else:  ## equally valid for both 'paired' and 'paired_collection'
                #if $gz:
                    --stdin=input_read1.gz
                    --read2-in=input_read2.gz
                #else:
                    --stdin=input_read1.txt
                    --read2-in=input_read2.txt
                #end if
            #end if
            #if $celloptions.use_cell_opts == "advanced":
                #if str($celloptions.set_cell_number) != '':
                   --set-cell-number=$celloptions.set_cell_number
                #end if
                #if str($celloptions.expect_cells) != '':
                   --expect-cells=$celloptions.expect_cells
                #end if
                --error-correct-threshold=$celloptions.error_correct_threshold
            #end if
            --method=$method
            --plot-prefix=OUT

            
        #if $log:
            --log='$out_log'
        #end if
        --log2stderr
    
            > '$out_whitelist' &&

            mkdir '${ out_html_report.files_path }' &&
            cp OUT_*.png '${ out_html_report.files_path }' &&

            echo "<html>
            <head></head><body>
            <h1>Cell and Count Metrics</h1>
            <img src=\"OUT_cell_barcode_count_density.png\" ><br />
            <img src=\"OUT_cell_barcode_knee.png\" ><br />
            <img src=\"OUT_cell_barcode_counts.png\" ><br />
            </body></html>" > '$out_html_report'
            &&
            mv OUT_cell_thresholds.tsv '$out_thresh'
    
None
False
Functional tests
name inputs outputs required files
Test-1 input_type_cond|input_read1: t_R2.fastq.gz
input_type_cond|bc_pattern: CCCCCCCCNNNNNNNN
input_type_cond|input_type: single
extract_method_cond|prime3: True
method: reads
knee_method: density
name: value
name: value
name: value
t_R2.fastq.gz
value
Test-2 input_type_cond|input_read1: t_R1.fastq.gz
input_type_cond|input_read2: t_R2.fastq.gz
input_type_cond|bc_pattern: CCCNNNNNNNNXXXXX
input_type_cond|input_type: paired
extract_method_cond|prime3: False
method: reads
knee_method: density
celloptions|expect_cells: 5
celloptions|error_correct_threshold: 3
celloptions|use_cell_opts: advanced
log: True
name: value
name: value
name: value
name: value
t_R1.fastq.gz
t_R2.fastq.gz
value
Test-3 input_type_cond|input_readpair: paired collection
input_type_cond|bc_pattern: CCCNNNNNNNNXXXXX
input_type_cond|input_type: paired_collection
extract_method_cond|prime3: False
method: reads
knee_method: density
celloptions|expect_cells: 5
celloptions|error_correct_threshold: 3
celloptions|use_cell_opts: advanced
log: True
name: value
name: value
name: value
name: value
t_R1.fastq.gz
t_R2.fastq.gz
value
Test-4 input_type_cond|input_read1: testYYY.40k.fastq.gz
input_type_cond|bc_pattern: (?P<cell_1>.{8,10})(?P<discard_1>ACTGGCCTGCGA){s<=3}(?P<cell_2>.{9})(?P<discard_2>GGTAGCGGTGACA){s<=3}(?P<cell_3>.{9})(?P<umi_1>.{8})T{3}.*
input_type_cond|input_type: single
extract_method_cond|filtered_out_bool: True
extract_method_cond|extract_method: regex
method: umis
knee_method: density
name: value
name: value
name: value
name: value
testYYY.40k.fastq.gz
value