view goprofiles.xml @ 3:ed226f0e5625 draft

planemo upload commit 08f1831e097df5d74bf60ff5955e7e9c8e524cc8-dirty
author proteore
date Wed, 14 Mar 2018 12:51:53 -0400
parents 58a8ddd58dde
children 715002a394ec
line wrap: on
line source

<tool id="goProfiles" name="goProfiles" version="0.1.0">
    <description> Statistical analysis of functional profiles
    </description>
    <requirements>
        <requirement type="package" version="3.4.1">R</requirement>
        <requirement type="package" version="3.4.1">bioconductor-org.hs.eg.db</requirement>
        <requirement type="package" version="1.38.2">bioconductor-annotationdbi</requirement>
        <requirement type="package" version="2.36.2">bioconductor-biobase</requirement>
        <requirement type="package" version="1.38.0">goprofiles</requirement>
    </requirements>
    <stdio>
        <exit_code range="1:" />
    </stdio>
    <command><![CDATA[
        Rscript $__tool_directory__/goprofiles.R
        #if $input.ids == "text"
            --input_type="text"
            --input="$input.text"
        #else
            --input_type="file"
            --input="$input.file"
            --ncol="$input.ncol"
            --header="$input.header"
        #end if
        
        --id_type="$input.id_type"
        
        --onto_opt="$onto_opt"
        
        --plot_opt="$opt.plot_opt"
        
        --level="$level"
        
        --per="$per"
        
        --title="$title"
        
        --duplicate="$duplicate"

        --text_output="$text_output"

    ]]></command>
    <inputs>
        <conditional name="input" >
            <param name="ids" type="select" label="Enter your ID list (only Entrez Gene ID or UniProt accession number allowed" help="Copy/paste or ID list from a file (e.g. table)" >
                <option value="text">Copy/paste your identifiers</option>
                <option value="file">Input file containing your identifiers</option>
            </param>
            <when value="text" >
                <param name="text" type="text" label="Copy/paste your identifiers" help='IDs must be separated by spaces into the form field, for example: P31946 P62258' >
                    <sanitizer>
                        <valid initial="string.printable">
                            <remove value="&apos;"/>
                        </valid>
                        <mapping initial="none">
                            <add source="&apos;" target="__sq__"/>
                        </mapping>
                    </sanitizer>
                </param>
                <param name="id_type" type="select" label="Please select the type of your IDs list" >
                    <option value="Entrez">Entrez Gene ID</option>
                    <option value="UniProt">UniProt protein acession number</option>
                </param>
            </when>
            <when value="file" >
                <param name="file" type="data" format="txt,tabular" label="Choose a file that contains your list of IDs" help="" />
                <param name="ncol" type="text" value="c1" label="The column number of IDs to use" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
                <param name="header" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contain header?" />
                <param name="id_type" type="select" label="Please select the type of your IDs list" >
                    <option value="Entrez">Entrez Gene ID</option>
                    <option value="UniProt">UniProt protein ID</option>
                </param>
            </when>            
        </conditional>
        <param name="duplicate" type="boolean" label="Remove duplicated IDs" truevalue="TRUE" falsevalue="FALSE" />
        <param type="select" name="onto_opt" label="Please select GO terms category" multiple="True" display="checkboxes" >
            <option value="CC">Cellular Component (CC)</option>
            <option value="MF">Molecular Function (MF)</option>
            <option value="BP">Biological Process (BP)</option>
        </param>
        <param type="select" name="level" label="Level of the ontology at which the profile has to be built (the higher this number, the deeper the GO level)" >
            <option value="1">1</option>
            <option value="2" selected="True">2</option>
            <option value="3">3</option>
        </param>
        <param type="boolean" name="per" label="Plot absolute or relative frequencies (not summing to 100)" truevalue="TRUE" falsevalue="FALSE" />
        <param type="text" name="title" label="Enter title of your figure" />
        <section name="opt" title="Choose graphical output (bar plots) format: png, jpeg, pdf" expanded="False" help="By default, PDF is chosen as output format">
            <param type="select" name="plot_opt" label="Choose plot output extension" multiple="True" display="checkboxes" >
                <option value="PNG">PNG</option>
                <option value="JPEG">JPEG</option>
                <option value="PDF" selected="True">PDF</option>
            </param>
        </section>
    </inputs>
    <outputs>
	    <collection type="list" label="GO Profile diagram outputs" name="output" >
	        <discover_datasets pattern="(?P&lt;designation&gt;.+\.png)" ext="png" />
	        <discover_datasets pattern="(?P&lt;designation&gt;.+\.jpeg)" ext="jpg" />
	        <discover_datasets pattern="(?P&lt;designation&gt;.+\.pdf)" ext="pdf" />
	    </collection>
        <data name="text_output" format="tabular" label="GO Profile text output" />
    </outputs>
    <tests>
        <test>
            <conditional name="input">
                <param name="ids" value="file" />
                <param name="file" value="ID_Converter_FKW_Lacombe_et_al_2017_OK.txt" />
                <param name="ncol" value="c1" />
                <param name="header" value="talse" /> 
                <param name="id_type" value="UniProt" />              
            </conditional>
            <param name="duplicate" value="false"/>
            <param name="onto_opt" value="CC,MF,BP" />
            <param name="level" value="2" />
            <param name="per" value="true" />
            <param name="title" value="Test" />
            <section name="opt" >
                <param name="plot_opt" value="PDF" />
            </section>
            <output_collection name="output" type="list" >
                <element name="GO_Profile_diagram_outputs__profile.BP.pdf" file="GO_Profile_diagram_outputs__profile.BP.pdf" ftype="pdf" />
                <element name="GO_Profile_diagram_outputs__profile.CC.pdf" file="GO_Profile_diagram_outputs__profile.CC.pdf" ftype="pdf" />
                <element name="GO_Profile_diagram_outputs__profile.MF.pdf" file="GO_Profile_diagram_outputs__profile.MF.pdf" ftype="pdf" />
            </output_collection>
            <output name="text_output" file="GO_Profile_text_output.txt"/>
        </test>
    </tests>
    <help><![CDATA[
This tool, based on the goProfiles R package, performs statistical analysis of functional profiles. It is based on GO ontology and considers either a gene set ('Entrez’ Identifiers) or a protein set (Uniprot accession number) as input. 

You can choose one or more GO categories: 

* Biological Process (BP) 
* Cellular Component (CC) 
* Molecular Function (MF) 

Functional profile at a given GO level is obtained by counting the number of identifiers having a hit in each category of this level (2 by default). Results are displayed as bar plots (with absolute or relative frequencies) and can be exported in pdf, png and jpeg formats; textual output with GO terms and their computed frequencies is also provided.  

For more details about GoProfiles, please read: Salicrú et al. Comparison of lists of genes based on functional profiles. BMC Bioinformatics. 2011;12:401.(https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-12-401)  

If your type of identifiers is not supported (i.e. different from Uniprot and Entrez), please use the **ID Converter** tool in the ProteoRE section to convert your list of IDs first.

-----

.. class:: infomark

**Authors** 

Sanchez A, Ocana J and Salicru M (2016). goProfiles: goProfiles: an R package for the statistical analysis of functional profiles. R package version 1.38.0.

.. class:: infomark

**Galaxy integration**

T.P. Lien Nguyen, Florence Combes, Yves Vandenbrouck CEA, INSERM, CNRS, Grenoble-Alpes University, BIG Institute, FR

Sandra Dérozier, Olivier Rué, Christophe Caron, Valentin Loux INRA, Paris-Saclay University, MAIAGE Unit,Migale Bioinformatics platform,

Contact support@proteore.org for any questions or concerns about the Galaxy implementation of this tool.

    ]]></help>
    <citations>
    </citations>
</tool>