view Pathview.xml @ 8:33c9bd75882a draft

planemo upload commit 1953798eb28b6e45c78342ed4c6a6a978d096fca
author proteore
date Thu, 30 Aug 2018 06:12:51 -0400
parents b617d4bbebf8
children 560541195c3f
line wrap: on
line source

<tool id="Pathview" name="KEGG pathway mapping (pathview)" version="2018.08.30">
    <requirements>
        <requirement type="package" version="1.18.0">bioconductor-pathview</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
        Rscript $__tool_directory__/PathView.R 
        #if $input.ids == "text"
            --id_list="$input.txt"
        #else
            --input="$input.file"
            --id_column="$input.ncol"
            --header="$input.header"  
        #end if
        #if $species.pathways.pathways_id != "pathways_file"
            --pathways_id="$species.pathways.pids" 
        #else 
            --pathways_input="$species.pathways.file"
            --header2="$species.pathways.header2"
            --pathway_col="$species.pathways.ncol2"
        #end if
        --id_type="$id_type"  
        --native_kegg="$native"
        
        #if $input.ids=="file"
            #if $input.expression_values.nb_exp =="1"
                --expression_values1="$input.expression_values.e1"
            #else if $input.expression_values.nb_exp =="2"
                --expression_values1="$input.expression_values.e1"
                --expression_values2="$input.expression_values.e2"
            #else if $input.expression_values.nb_exp =="3"
                --expression_values1="$input.expression_values.e1"
                --expression_values2="$input.expression_values.e2"
                --expression_values3="$input.expression_values.e3"
            #end if
        #end if

        --species=${species.ref_file}

    ]]></command>
    <inputs>
        <param name="id_type" type="select" label="Select your identifiers type :">
            <option value="uniprotID">Uniprot Accession number</option>
            <option value="geneID">Entrez gene ID</option>
        </param>
        <conditional name="input" >
            <param name="ids" type="select" label="Provide your identifiers" help="Copy/paste or ID list from a file (e.g. table)" >
                <option value="text">Copy/paste your identifiers</option>
                <option value="file" selected="true">Input file containing your identifiers</option>
            </param>
            <when value="text" >
                <param name="txt" type="text" label="Copy/paste your identifiers" help='IDs must be separated by "," into the form field, for example: P31946,P62258' >
                    <sanitizer invalid_char=''>
                        <valid initial="string.printable">
                            <remove value="&apos;"/>
                        </valid>
                        <mapping initial="none">
                            <add source="&apos;" target="__sq__"/>
                        </mapping>
                    </sanitizer>
                </param>
            </when>
            <when value="file" >
                <param name="file" type="data" format="txt,tabular" label="Select a file that contains your list of IDs" help="" />
                <param name="header" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contains a header?" />
                <param name="ncol" type="text" value="c1" label="The column which contains your IDs to map" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
                <conditional name="expression_values">
                    <param name="nb_exp" type="select" label="How many expression values column in your file ?">
                        <option value="0" >0</option>
                        <option value="1" >1</option>
                        <option value="2" >2</option>
                        <option value="3" >3</option>
                    </param>
                    <when value="0">
                    </when>
                    <when value="1">
                        <param name="e1" type="text" value="" label="First column number of your expression data" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on'/>
                    </when>
                    <when value="2">
                        <param name="e1" type="text" value="" label="First column number of your expression data"/>
                        <param name="e2" type="text" value="" label="Second column number of your expression data"/>
                    </when>
                    <when value="3">
                        <param name="e1" type="text" value="" label="First column number of your expression data"/>
                        <param name="e2" type="text" value="" label="Second column number of your expression data"/>
                        <param name="e3" type="text" value="" label="Third column number of your expression data"/>
                    </when>
                </conditional>
            </when>
        </conditional>
        <conditional name="species">
        <param name="ref_file" type="select" label="Select species" >
            <option value="hsa">Human (hsa)</option>
            <option value="mmu">Mouse (mmu)</option>
        </param>
            <when value="hsa">
                <conditional name="pathways">
                <param name="pathways_id" type="select" label="Provide your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
                    <option value="pathways_names">KEGG pathway name(s)</option>
                    <option value="pathways_ids">KEGG pathway id(s)</option>
                    <option value="pathways_file">KEGG pathway id(s) from file</option>
                </param>
                <when value="pathways_names">
                    <param name="pids" type="select" label="Select pathway(s)" multiple="true" help='You can select one or several pathway(s), you can write the beginning of your pathways to search using autocomplete'>
                        <options from_data_table="hsa_pathways">
                            <filter type="sort_by" column="1"/>
                            <validator type="no_options" message="No indexes are available for the selected input dataset"/>
                        </options>
                    </param>
                </when>
                <when value="pathways_ids">
                    <param name="pids" type="text" label="Copy/paste your pathway id(s)" help='IDs must be separated by "," into the form field, for example: "00010,05412" or "hsa00010,hsa05412" or "path:hsa00010"'>
                        <sanitizer invalid_char=''>
                        <valid initial="string.printable">
                            <remove value="&apos;"/>
                        </valid>
                        <mapping>
                            <add source="&#x20;" target=""/> 
                        </mapping>
                        </sanitizer>
                    </param>
                </when>
                <when value="pathways_file">
                    <param name="file" type="data" format="txt,tabular" label="Select a file with a column of pathways id" help="Pathway id format : 'path:hsa00010' or 'hsa00010' or '00010'" />
                    <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contains a header?" />
                    <param name="ncol2" type="text" value="c1" label="The column which contains your pathways ids" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
                </when>
                </conditional>
            </when>
            <when value="mmu">
                <conditional name="pathways">
                <param name="pathways_id" type="select" label="Provide your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
                    <option value="pathways_names">KEGG pathway name(s)</option>
                    <option value="pathways_ids">KEGG pathway id(s)</option>
                    <option value="pathways_file">KEGG pathway id(s) from file</option>
                </param>
                <when value="pathways_names">
                    <param name="pids" type="select" label="Select pathway(s)" multiple="true" help='You can select one or several pathway(s), you can write the beginning of your pathways to search using autocomplete'>
                        <options from_data_table="mmu_pathways">
                            <filter type="sort_by" column="1"/>
                            <validator type="no_options" message="No indexes are available for the selected input dataset"/>
                        </options>
                    </param>
                </when>
                <when value="pathways_ids">
                    <param name="pids" type="text" label="Copy/paste your pathway id(s)" help='IDs must be separated by "," into the form field, for example: "path:mmu00053" or "mmu00053,mmu00340" or "00053"'>
                        <sanitizer invalid_char=''>
                        <valid initial="string.printable">
                            <remove value="&apos;"/>
                        </valid>
                        <mapping>
                            <add source="&#x20;" target=""/> 
                        </mapping>
                        </sanitizer>
                    </param>
                </when>
                <when value="pathways_file">
                    <param name="file" type="data" format="txt,tabular" label="Select a file with a column of pathways id " help="Pathway id format : 'path:mmu00053' or 'mmu00053' or '00053'" />
                    <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contain header?" />
                    <param name="ncol2" type="text" value="c1" label="The column which contains your pathways ids" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
                </when>
                </conditional>
            </when>
        </conditional>
        <param name="native" type="select" label="Choose the output graph format">
            <option value="true">KEGG graph (.png)</option>
            <option value="false">Graphviz layout engine (.pdf)</option> 
        </param>
    </inputs>
    <outputs>
        <data name="graphviz_from_file" format="pdf" label="KEGG mapping with ${input.file.name}">
            <filter>native=="false" and input["ids"] == "file"</filter>
            <discover_datasets pattern="(?P&lt;designation&gt;.+)\.pathview.*\.pdf" ext="pdf" visible="true" assign_primary_output="true"/>
        </data>
        <data name="kegg_from_file" format="png" label="KEGG mapping with ${input.file.name}">
            <filter>native=="true" and input["ids"] == "file"</filter>
            <discover_datasets pattern="(?P&lt;designation&gt;.+)\.pathview.*\.png" ext="png" visible="true" assign_primary_output="true"/>
        </data>
        <data name="graphviz_from_list" format="pdf" label="KEGG mapping with given ids">
            <filter>native=="false" and input["ids"] == "text"</filter>
            <discover_datasets pattern="(?P&lt;designation&gt;.+)\.pathview.*\.pdf" ext="pdf" visible="true" assign_primary_output="true"/>
        </data>
        <data name="kegg_from_list" format="png" label="KEGG mapping with given ids">
            <filter>native=="true" and input["ids"] == "text"</filter>
            <discover_datasets pattern="(?P&lt;designation&gt;.+)\.pathview.*\.png" ext="png" visible="true" assign_primary_output="true"/>
        </data>
    </outputs>
    <tests>
        <test>
            <conditional name="input">
                <param name="ids" value="file"/>
                <param name="file" value="Lacombe_et_al_2017_OK.txt"/>
                <param name="header" value="true"/>
                <param name="ncol" value="c1"/>
            </conditional>
            <conditional name="pathways">
                <param name="pathways_id" value="pathways_ids"/>
                <param name="pids" value="04514,05167,00010"/>
            </conditional>
            <param name="id_type" value="uniprotID"/>
            <param name="species" value="hsa"/>
            <param name="native" value="true"/>            
            <output name="kegg_from_file" file="hsa04514.pathview.png" compare="sim_size"/>
            <output name="kegg_from_file" file="hsa05167.pathview.png" compare="sim_size"/>
            <output name="kegg_from_file" file="hsa00010.pathview.png" compare="sim_size"/>
        </test>
    </tests>
    <help><![CDATA[
This tool map a list of Uniprot Accession number or Entrez gene ID to KEGG pathway with pathview R package.

Select your identifier type : UniprotAC or Entrez gene ID

Select an input file containing ids in a column, set header and column number or copy/paste your ids. 

You can import 1 to 3 column(s) of expression values if you are importing ids from a file.

Select a species of interest. 

Select one or several pathways of interest from the dropdown menu or copy/paste KEGG pathway id(s) or import it from a file.

Select the graph format : KEGG (jpg) or graphviz (pdf)

Uniprot accession number converted to Entrez geneID or Entrez geneID are mapped to each selected pathways.

Output : One file (png or pdf) for each selected pathway. 

-----

.. class:: infomark

**Authors**

David Christiany, 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

This work has been partially funded through the French National Agency for Research (ANR) IFB project.

Contact support@proteore.org for any questions or concerns about the Galaxy implementation of this tool.
    ]]></help>
    <citations>
        <citation type="doi">10.1093/nar/gkx372</citation>
        <citation type="bibtex">
@misc{renameTODO,
  author = {Weijun Luo},
  year = {2013},
  title = {pathview},
  url = {https://bioconductor.org/packages/release/bioc/html/pathview.html},
}</citation>
    </citations>
</tool>