view percolator.xml @ 6:653d724a6b99 draft default tip

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/percolator commit de8cdf895c3c6113f301a119788701b2465a1b1b"
author galaxyp
date Thu, 13 Aug 2020 07:53:09 +0000
parents b20ea66c01f0
children
line wrap: on
line source

<tool id="percolator" name="Percolator" version="@TOOL_VERSION@+galaxy0">
    <description>accurate peptide identification</description>
    <macros>
        <import>percolator_macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <stdio>
        <exit_code range="1:"/>
    </stdio>
    <command>
    percolator -j '$input'
    #if $output_type == "xml"
        -X '$percoout' --decoy-xml-output
    #else
        -J '$percoout'
    #end if
    $tdmethod
    #if $cpos
        -p $cpos
    #end if
    #if $cneg
        -n $cneg
    #end if
    #if $testfdr
        -t $testfdr
    #end if
    #if $trainfdr
        -F $trainfdr
    #end if
    #if $maxiter
        -i $maxiter
    #end if
    #if $seed
        -S $seed
    #end if
    #if $default_direction
        -V $default_direction
    #end if
    $quickval $unitnorm $override $onlypsms
    </command>
    <inputs>
        <param name="output_type" label="What to output" type="select" display="radio">
            <option value="xml" selected="true">Percolator output (XML)</option>
	    <option value="tsv">Computed features of input (Tab separated)</option>
        </param>
        <param name="input" type="data" format="percin" label="Percolator input data" />
        <param name="tdmethod" type="select" label="Target decoy method">
            <option value="-y" selected="true">Mix-max</option>
	    <option value="-Y">Target-decoy competition (also good when unequal amounts of target/decoy PSMs)</option>
        </param>
        <param name="cpos" label="Penalty for mistakes on positive examples" type="float" optional="true" />
        <param name="cneg" label="Penalty for mistakes on negative examples" type="float" optional="true" />
        <param name="trainfdr" label="FDR threshold to define positive examples" type="float" optional="true" help="Set by cross validation if 0."/>
        <param name="testfdr" label="FDR threshold for evaluating best cross validation result" type="float" optional="true" />
        <param name="maxiter" label="Maximal number of iterations" type="integer" optional="true" />
        <param name="quickval" label="Quicker execution by reduced internal cross-validation" type="boolean" truevalue="-x" falsevalue=""/>
        <param name="default_direction" label="Most informative feature given as feature name." help="Can be negated to indicate lower value=better, e.g -featureName" type="text" optional="true" />
        <param name="unitnorm" type="boolean" label="Unit normalization instead of standard deviation" truevalue="-u" falsevalue=""/>
        <param name="override" label="Override error check?" help="and no fallback on default score vector in case of suspect score vector" type="boolean" truevalue="-O" falsevalue=""/>
        <param name="seed" label="Seed of random number generator" type="integer" optional="true" />
        <!--<param name="klammer" label="Retention time features calculated as in Klammer et al?" type="boolean" />  TODO: this param goes together with the doc param which I havent figured out how to use yet. -->
        <param name="onlypsms" label="Skip all outputs except PSMs" type="boolean" truevalue="-U" falsevalue=""/>
    </inputs>
    <outputs>
        <data format="percout" name="percoout">
		    <change_format>
			    <when input="output_type" value="tsv" format="tsv" />
		    </change_format>
	    </data>
    </outputs>
    <tests>
        <test>
            <param name="input" value="percolatorTab" />
            <param name="output_type" value="xml" />
            <output name="percoout" value="percolatorOut.xml" lines_diff="2" />
        </test>
        <test>
            <param name="input" value="percolatorTab" />
            <param name="output_type" value="xml" />
            <param name="tdmethod" value="-Y" />
            <param name="cpos" value="0.00001" />
            <param name="cneg" value="0.00001" />
            <param name="trainfdr" value="0.1" />
            <param name="testfdr" value="0.1" />
            <param name="maxiter" value="5" />
            <param name="quickval" value="-x" />
            <param name="default_direction" value="RawScore" />
            <param name="unitnorm" value="-u" />
            <param name="override" value="-O" />
            <param name="seed" value="2" />
            <param name="onlypsms" value="-U" />
            <output name="percoout" value="percolatorOut_alloptions.xml" lines_diff="2" />
        </test>
        <test>
            <param name="input" value="percolatorTab" />
            <param name="output_type" value="tsv" />
            <output name="percoout" value="percolatorOut.txt" lines_diff="1" />
        </test>
    </tests>
    <help>The first step in analyzing an mass spectrometry assay is to match the harvested spectra against a target database using database search engines such as Sequest and Mascot, a process that renders list of peptide-spectrum matches. However, it is not trivial to assess the accuracy of these identifications.

Percolator uses a semi-supervised machine learning to discriminate correct from incorrect peptide-spectrum matches, and calculates accurate statistics such as q-value (FDR) and posterior error probabilities. 
    </help>
    <citations>
        <citation type="doi">10.1038/nmeth1113</citation>
        <citation type="doi">10.1021/pr700600n</citation>
        <citation type="doi">10.1093/bioinformatics/btn294</citation>
    </citations>
</tool>