Repository revision
5:1ee282794de3

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

PRINSEQ tool metadata
Miscellaneous
PRINSEQ
to process quality of sequences
prinseq
toolshed.g2.bx.psu.edu/repos/iuc/prinseq/prinseq/0.20.4+galaxy2
0.20.4+galaxy2
prinseq-lite.pl --version
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/iuc/prinseq/prinseq/0.20.4+galaxy2 (this tool)
toolshed.g2.bx.psu.edu/repos/iuc/prinseq/prinseq/0.20.4+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/prinseq/prinseq/0.20.4
toolshed.g2.bx.psu.edu/repos/iuc/prinseq/prinseq/0.1.0
prinseq
Requirements (dependencies defined in the <requirements> tag set)
name version type
prinseq 0.20.4 package
Additional information about this tool
mkdir tmp/ &&

        #if $seq_type.seq_type_opt == "single"
            #set fwd = $seq_type.input_singles
            #set rev = None
        #else if $seq_type.seq_type_opt == "paired"
            #set fwd = $seq_type.input_mate1
            #set rev = $seq_type.input_mate2
        #else
            #set fwd = $seq_type.input_collection.forward
            #set rev = $seq_type.input_collection.reverse
        #end if

        #if $rev and $fwd.ext != $rev.ext:
            >&2 echo 'Both pairs from your paired-end library need to be from the same filetype.' &&
            exit 1;
        #end if
        
        #if $fwd.ext.endswith(".gz")
            gunzip -c '$fwd' > fwd.fastq &&
        #else
            ln -s '$fwd' fwd.fastq &&
        #end if
        
        #if $rev
            #if $rev.ext.endswith(".gz")
                gunzip -c '$rev' > rev.fastq &&
            #else
                ln -s '$rev' rev.fastq &&
            #end if
        #end if

        ## create empty output files
        #if $seq_type.seq_type_opt == "single"
            touch tmp/good_sequences.fastq tmp/rejected_sequences.fastq &&
        #else
            touch tmp/good_sequences_1.fastq tmp/good_sequences_1_singletons.fastq tmp/rejected_sequences_1.fastq &&
            touch tmp/good_sequences_2.fastq tmp/good_sequences_2_singletons.fastq tmp/rejected_sequences_2.fastq &&
        #end if


        prinseq-lite.pl
            -fastq fwd.fastq
            #if $rev
                -fastq2 rev.fastq
            #end if
            #if $fwd.ext.startswith('fastqillumina'):
                -phred64
            #end if
            -out_good "tmp/good_sequences"
            -out_bad "tmp/rejected_sequences"

            #if $filter_treatments.apply_filter_treatments == "true":
                #set length_filter_treatments=$filter_treatments.length_filter_treatments
                #if $length_filter_treatments.apply_length_filter_treatments == "true":
                    #set min_length_filter_treatments=$length_filter_treatments.min_length_filter_treatments
                    #if $min_length_filter_treatments.apply_min_length_filter_treatments == "true":
                        -min_len $min_length_filter_treatments.min_length_filter_treatment_value
                    #end if

                    #set max_length_filter_treatments=$length_filter_treatments.max_length_filter_treatments
                    #if $max_length_filter_treatments.apply_max_length_filter_treatments == "true":
                        -max_len $max_length_filter_treatments.max_length_filter_treatment_value
                    #end if
                #end if

                #set quality_filter_treatments=$filter_treatments.quality_filter_treatments
                #if $quality_filter_treatments.apply_quality_filter_treatments == "true":
                    #set min_quality_filter_treatments=$quality_filter_treatments.min_quality_filter_treatments
                    #if $min_quality_filter_treatments.apply_min_quality_filter_treatments == "true":
                        -min_qual_score $min_quality_filter_treatments.min_quality_filter_treatment_value
                    #end if

                    #set max_quality_filter_treatments=$quality_filter_treatments.max_quality_filter_treatments
                    #if $max_quality_filter_treatments.apply_max_quality_filter_treatments == "true":
                        -max_qual_score $max_quality_filter_treatments.max_quality_filter_treatment_value
                    #end if

                    #set mean_quality_filter_treatments=$quality_filter_treatments.mean_quality_filter_treatments
                    #if $mean_quality_filter_treatments.apply_mean_quality_filter_treatments == "true":
                        #set min_mean_quality_filter_treatments=$mean_quality_filter_treatments.min_mean_quality_filter_treatments
                        #if $min_mean_quality_filter_treatments.apply_min_mean_quality_filter_treatments == "true":
                            -min_qual_mean $min_mean_quality_filter_treatments.min_mean_quality_filter_treatment_value
                        #end if

                        #set max_mean_quality_filter_treatments=$mean_quality_filter_treatments.max_mean_quality_filter_treatments
                        #if $max_mean_quality_filter_treatments.apply_max_mean_quality_filter_treatments == "true":
                            -max_qual_mean $max_mean_quality_filter_treatments.max_mean_quality_filter_treatment_value
                        #end if
                    #end if
                #end if

                #set base_content_filter_treatments=$filter_treatments.base_content_filter_treatments
                #if $base_content_filter_treatments.apply_base_content_filter_treatments == "true":
                    #set GC_perc_content_filter_treatments=$base_content_filter_treatments.GC_perc_content_filter_treatments
                    #if $GC_perc_content_filter_treatments.apply_GC_perc_content_filter_treatments == "true":
                        #set min_GC_perc_content_filter_treatments=$GC_perc_content_filter_treatments.min_GC_perc_content_filter_treatments
                        #if $min_GC_perc_content_filter_treatments.apply_min_GC_perc_content_filter_treatments == "true":
                            -min_gc $min_GC_perc_content_filter_treatments.min_GC_perc_content_filter_treatment_value
                        #end if

                        #set max_GC_perc_content_filter_treatments=$GC_perc_content_filter_treatments.max_GC_perc_content_filter_treatments
                        #if $max_GC_perc_content_filter_treatments.apply_max_GC_perc_content_filter_treatments == "true":
                            -max_gc $max_GC_perc_content_filter_treatments.max_GC_perc_content_filter_treatment_value
                        #end if
                    #end if

                    #set N_number_content_filter_treatments=$base_content_filter_treatments.N_number_content_filter_treatments
                    #if $N_number_content_filter_treatments.apply_N_number_content_filter_treatments == "true":
                        -ns_max_n $N_number_content_filter_treatments.N_number_content_filter_treatment_value
                    #end if

                    #set N_percentage_content_filter_treatments=$base_content_filter_treatments.N_percentage_content_filter_treatments
                    #if $N_percentage_content_filter_treatments.apply_N_percentage_content_filter_treatments == "true":
                        -ns_max_p $N_percentage_content_filter_treatments.N_percentage_content_filter_treatment_value
                    #end if

                    $base_content_filter_treatments.apply_other_base_content_filter_treatments
                #end if

                #set complexity_filter_treatments=$filter_treatments.complexity_filter_treatments
                #if $complexity_filter_treatments.apply_complexity_filter_treatments == "true":
                    -lc_method $complexity_filter_treatments.method_complexity_filter_treatments
                    -lc_threshold $complexity_filter_treatments.threshold_complexity_filter_treatments
                #end if

            #end if

            #if $trimming_treatments.apply_trimming_treatments == "true":
                #set length_trimming_treatments=$trimming_treatments.length_trimming_treatments
                #if $length_trimming_treatments.apply_length_trimming_treatments == "true":
                    -trim_to_len $length_trimming_treatments.length_trimming_treatment_value
                #end if

                #set position_trimming_treatments=$trimming_treatments.position_trimming_treatments
                #if $position_trimming_treatments.apply_position_trimming_treatments == "true":
                    #set nb_position_trimming_treatments=$position_trimming_treatments.nb_position_trimming_treatments
                    #if $nb_position_trimming_treatments.apply_nb_position_trimming_treatments == "true":
                        #set left_position_trimming_treatments=$nb_position_trimming_treatments.left_position_trimming_treatments
                        #if $left_position_trimming_treatments.apply_left_position_trimming_treatments == "true":
                            -trim_left $left_position_trimming_treatments.left_position_trimming_treatment_value
                        #end if

                        #set right_position_trimming_treatments=$nb_position_trimming_treatments.right_position_trimming_treatments
                        #if $right_position_trimming_treatments.apply_right_position_trimming_treatments == "true":
                            -trim_right $right_position_trimming_treatments.right_position_trimming_treatment_value
                        #end if
                    #end if

                    #set percentage_position_trimming_treatments=$position_trimming_treatments.percentage_position_trimming_treatments
                    #if $percentage_position_trimming_treatments.apply_percentage_position_trimming_treatments == "true":
                        #set left_percentage_position_trimming_treatments=$percentage_position_trimming_treatments.left_percentage_position_trimming_treatments
                        #if $left_percentage_position_trimming_treatments.apply_left_percentage_position_trimming_treatments == "true":
                            -trim_left_p $left_percentage_position_trimming_treatments.left_percentage_position_trimming_treatment_value
                        #end if

                        #set right_percentage_position_trimming_treatments=$percentage_position_trimming_treatments.right_percentage_position_trimming_treatments
                        #if $right_percentage_position_trimming_treatments.apply_right_percentage_position_trimming_treatments == "true":
                            -trim_right_p $right_percentage_position_trimming_treatments.right_percentage_position_trimming_treatment_value
                        #end if
                    #end if
                #end if

                #set tail_trimming_treatments=$trimming_treatments.tail_trimming_treatments
                #if $tail_trimming_treatments.apply_tail_trimming_treatments == "true":
                    #set a_t_tail_trimming_treatments=$tail_trimming_treatments.a_t_tail_trimming_treatments
                    #if $a_t_tail_trimming_treatments.apply_a_t_tail_trimming_treatments == "true":
                        #set left_a_t_tail_trimming_treatments=$a_t_tail_trimming_treatments.left_a_t_tail_trimming_treatments
                        #if $left_a_t_tail_trimming_treatments.apply_left_a_t_tail_trimming_treatments == "true":
                            -trim_tail_left $left_a_t_tail_trimming_treatments.left_a_t_tail_trimming_treatment_value
                        #end if

                        #set right_a_t_tail_trimming_treatments=$a_t_tail_trimming_treatments.right_a_t_tail_trimming_treatments
                        #if $right_a_t_tail_trimming_treatments.apply_right_a_t_tail_trimming_treatments == "true":
                            -trim_tail_right $right_a_t_tail_trimming_treatments.right_a_t_tail_trimming_treatment_value
                        #end if
                    #end if

                    #set ns_tail_trimming_treatments=$tail_trimming_treatments.ns_tail_trimming_treatments
                    #if $ns_tail_trimming_treatments.apply_ns_tail_trimming_treatments == "true":
                        #set left_ns_tail_trimming_treatments=$ns_tail_trimming_treatments.left_ns_tail_trimming_treatments
                        #if $left_ns_tail_trimming_treatments.apply_left_ns_tail_trimming_treatments == "true":
                            -trim_ns_left $left_ns_tail_trimming_treatments.left_ns_tail_trimming_treatment_value
                        #end if

                        #set right_ns_tail_trimming_treatments=$ns_tail_trimming_treatments.right_ns_tail_trimming_treatments
                        #if $right_ns_tail_trimming_treatments.apply_right_ns_tail_trimming_treatments == "true":
                            -trim_ns_right $right_ns_tail_trimming_treatments.right_ns_tail_trimming_treatment_value
                        #end if
                    #end if
                #end if

                #set quality_trimming_treatments=$trimming_treatments.quality_trimming_treatments
                #if $quality_trimming_treatments.apply_quality_trimming_treatments == "true":
                    #set left_quality_trimming_treatments=$quality_trimming_treatments.left_quality_trimming_treatments
                    #if $left_quality_trimming_treatments.apply_left_quality_trimming_treatments == "true":
                        -trim_qual_left $left_quality_trimming_treatments.left_quality_trimming_treatment_value
                    #end if

                    #set right_quality_trimming_treatments=$quality_trimming_treatments.right_quality_trimming_treatments
                    #if $right_quality_trimming_treatments.apply_right_quality_trimming_treatments == "true":
                        -trim_qual_right $right_quality_trimming_treatments.right_quality_trimming_treatment_value
                    #end if

                    -trim_qual_type $quality_trimming_treatments.type_quality_trimming_treatments
                    -trim_qual_rule $quality_trimming_treatments.rule_quality_trimming_treatments
                    -trim_qual_window $quality_trimming_treatments.window_quality_trimming_treatments
                    -trim_qual_step $quality_trimming_treatments.step_quality_trimming_treatments
                #end if

            #end if

            #*
            -graph_stats "$graph_stats"
            -graph_data tmp/stats.gd

        &&

        prinseq-graphs-noPCA.pl -i "tmp/stats.gd" -html_all -o stats_html
        *#

        #if $fwd.ext.endswith('.gz')
            && for f in tmp/*.fastq;
            do
                gzip -c \$f > tmp_file &&
                mv tmp_file \$f;
            done
        #end if

    
None
False
Functional tests
name inputs outputs required files
Test-1 seq_type|input_singles: prinseq_input_sequences.fastq.gz
seq_type|seq_type_opt: single
filter_treatments|length_filter_treatments|min_length_filter_treatments|min_length_filter_treatment_value: 60
filter_treatments|length_filter_treatments|min_length_filter_treatments|apply_min_length_filter_treatments: true
filter_treatments|length_filter_treatments|max_length_filter_treatments|apply_max_length_filter_treatments: false
filter_treatments|length_filter_treatments|apply_length_filter_treatments: true
filter_treatments|quality_filter_treatments|min_quality_filter_treatments|apply_min_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|max_quality_filter_treatments|apply_max_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|min_mean_quality_filter_treatment_value: 15
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|apply_min_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|max_mean_quality_filter_treatments|apply_max_mean_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|apply_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|apply_quality_filter_treatments: true
filter_treatments|base_content_filter_treatments|GC_perc_content_filter_treatments|apply_GC_perc_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_number_content_filter_treatments|apply_N_number_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|N_percentage_content_filter_treatment_value: 2
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|apply_N_percentage_content_filter_treatments: true
filter_treatments|base_content_filter_treatments|apply_other_base_content_filter_treatments: False
filter_treatments|base_content_filter_treatments|apply_base_content_filter_treatments: true
filter_treatments|complexity_filter_treatments|apply_complexity_filter_treatments: false
filter_treatments|apply_filter_treatments: true
trimming_treatments|length_trimming_treatments|apply_length_trimming_treatments: false
trimming_treatments|position_trimming_treatments|apply_position_trimming_treatments: false
trimming_treatments|tail_trimming_treatments|apply_tail_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|left_quality_trimming_treatments|apply_left_quality_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|right_quality_trimming_treatment_value: 20
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|apply_right_quality_trimming_treatments: true
trimming_treatments|quality_trimming_treatments|type_quality_trimming_treatments: min
trimming_treatments|quality_trimming_treatments|rule_quality_trimming_treatments: lt
trimming_treatments|quality_trimming_treatments|window_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|step_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|apply_quality_trimming_treatments: true
trimming_treatments|apply_trimming_treatments: true
name: value
name: value
prinseq_input_sequences.fastq.gz
value
Test-2 seq_type|input_mate1: pairend_strandspecific_51mer_hg19_chr1_1-100000.R1.fastq
seq_type|input_mate2: pairend_strandspecific_51mer_hg19_chr1_1-100000.R2.fastq
seq_type|seq_type_opt: paired
filter_treatments|length_filter_treatments|min_length_filter_treatments|min_length_filter_treatment_value: 50
filter_treatments|length_filter_treatments|min_length_filter_treatments|apply_min_length_filter_treatments: true
filter_treatments|length_filter_treatments|max_length_filter_treatments|apply_max_length_filter_treatments: false
filter_treatments|length_filter_treatments|apply_length_filter_treatments: true
filter_treatments|quality_filter_treatments|min_quality_filter_treatments|apply_min_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|max_quality_filter_treatments|apply_max_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|min_mean_quality_filter_treatment_value: 15
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|apply_min_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|max_mean_quality_filter_treatments|apply_max_mean_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|apply_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|apply_quality_filter_treatments: true
filter_treatments|base_content_filter_treatments|GC_perc_content_filter_treatments|apply_GC_perc_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_number_content_filter_treatments|apply_N_number_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|N_percentage_content_filter_treatment_value: 2
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|apply_N_percentage_content_filter_treatments: true
filter_treatments|base_content_filter_treatments|apply_other_base_content_filter_treatments: False
filter_treatments|base_content_filter_treatments|apply_base_content_filter_treatments: true
filter_treatments|complexity_filter_treatments|apply_complexity_filter_treatments: false
filter_treatments|apply_filter_treatments: true
trimming_treatments|length_trimming_treatments|apply_length_trimming_treatments: false
trimming_treatments|position_trimming_treatments|apply_position_trimming_treatments: false
trimming_treatments|tail_trimming_treatments|apply_tail_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|left_quality_trimming_treatments|apply_left_quality_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|right_quality_trimming_treatment_value: 20
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|apply_right_quality_trimming_treatments: true
trimming_treatments|quality_trimming_treatments|type_quality_trimming_treatments: min
trimming_treatments|quality_trimming_treatments|rule_quality_trimming_treatments: lt
trimming_treatments|quality_trimming_treatments|window_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|step_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|apply_quality_trimming_treatments: true
trimming_treatments|apply_trimming_treatments: true
name: value
name: value
name: value
name: value
name: value
name: value
pairend_strandspecific_51mer_hg19_chr1_1-100000.R1.fastq
pairend_strandspecific_51mer_hg19_chr1_1-100000.R2.fastq
value
Test-3 seq_type|input_collection: paired collection
seq_type|seq_type_opt: paired_collection
filter_treatments|length_filter_treatments|min_length_filter_treatments|min_length_filter_treatment_value: 50
filter_treatments|length_filter_treatments|min_length_filter_treatments|apply_min_length_filter_treatments: true
filter_treatments|length_filter_treatments|max_length_filter_treatments|apply_max_length_filter_treatments: false
filter_treatments|length_filter_treatments|apply_length_filter_treatments: true
filter_treatments|quality_filter_treatments|min_quality_filter_treatments|apply_min_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|max_quality_filter_treatments|apply_max_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|min_mean_quality_filter_treatment_value: 15
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|min_mean_quality_filter_treatments|apply_min_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|max_mean_quality_filter_treatments|apply_max_mean_quality_filter_treatments: false
filter_treatments|quality_filter_treatments|mean_quality_filter_treatments|apply_mean_quality_filter_treatments: true
filter_treatments|quality_filter_treatments|apply_quality_filter_treatments: true
filter_treatments|base_content_filter_treatments|GC_perc_content_filter_treatments|apply_GC_perc_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_number_content_filter_treatments|apply_N_number_content_filter_treatments: false
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|N_percentage_content_filter_treatment_value: 2
filter_treatments|base_content_filter_treatments|N_percentage_content_filter_treatments|apply_N_percentage_content_filter_treatments: true
filter_treatments|base_content_filter_treatments|apply_other_base_content_filter_treatments: False
filter_treatments|base_content_filter_treatments|apply_base_content_filter_treatments: true
filter_treatments|complexity_filter_treatments|apply_complexity_filter_treatments: false
filter_treatments|apply_filter_treatments: true
trimming_treatments|length_trimming_treatments|apply_length_trimming_treatments: false
trimming_treatments|position_trimming_treatments|apply_position_trimming_treatments: false
trimming_treatments|tail_trimming_treatments|apply_tail_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|left_quality_trimming_treatments|apply_left_quality_trimming_treatments: false
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|right_quality_trimming_treatment_value: 20
trimming_treatments|quality_trimming_treatments|right_quality_trimming_treatments|apply_right_quality_trimming_treatments: true
trimming_treatments|quality_trimming_treatments|type_quality_trimming_treatments: min
trimming_treatments|quality_trimming_treatments|rule_quality_trimming_treatments: lt
trimming_treatments|quality_trimming_treatments|window_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|step_quality_trimming_treatments: 1
trimming_treatments|quality_trimming_treatments|apply_quality_trimming_treatments: true
trimming_treatments|apply_trimming_treatments: true
pairend_strandspecific_51mer_hg19_chr1_1-100000.R1.fastq.gz
pairend_strandspecific_51mer_hg19_chr1_1-100000.R2.fastq.gz