comparison kegg_pathways_visualization.xml @ 12:9fe4a861601b draft

planemo upload commit 7e2bd28d27e13c402acd46500f64d5c117797aa7-dirty
author proteore
date Fri, 09 Nov 2018 05:11:46 -0500
parents
children c59ec7fce7b3
comparison
equal deleted inserted replaced
11:6d5c0ff2b0bd 12:9fe4a861601b
1 <tool id="kegg_pathways_visualization" name="KEGG pathways" version="2018.11.08">
2 <description>map visualisation (PathView)</description>
3 <requirements>
4 <requirement type="package" version="1.18.0">bioconductor-pathview</requirement>
5 </requirements>
6 <command detect_errors="exit_code"><![CDATA[
7 Rscript $__tool_directory__/kegg_pathways_visualization.R
8 #if $input.ids == "text"
9 --id_list="$input.txt"
10 #else
11 --input="$input.file"
12 --id_column="$input.ncol"
13 --header="$input.header"
14 #end if
15 #if $species.pathways.pathways_id != "pathways_file"
16 --pathways_id="$species.pathways.pids"
17 #else
18 --pathways_input="$species.pathways.file"
19 --header2="$species.pathways.header2"
20 --pathway_col="$species.pathways.ncol2"
21 #end if
22 --id_type="$id_type"
23 --native_kegg="$native"
24
25
26 #if $input.ids=="file" and $input.foldchange.fc=="true"
27 --fold_change_data="$input.foldchange.fc"
28 --fold_change_col="$input.foldchange.fc_col"
29 #else
30 --fold_change_data="false"
31 #end if
32
33 --species=${species.ref_file}
34 --pathways_list=$__tool_directory__/${ filter( lambda x: str( x[0] ) == str( $species.ref_file ), $__app__.tool_data_tables['kegg_pathways_list_index'].get_fields() )[0][-1] }
35 --output="$text_output"
36
37 ]]></command>
38 <inputs>
39 <conditional name="species">
40 <param name="ref_file" type="select" label="Select species" >
41 <option value="hsa">Human (H. sapiens)</option>
42 <option value="mmu">Mouse (M. musculus)</option>
43 <option value="rno">Rat (R. norvegicus)</option>
44 </param>
45 <when value="hsa">
46 <conditional name="pathways">
47 <param name="pathways_id" type="select" label="Provide your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
48 <option value="pathways_names">KEGG pathway name(s)</option>
49 <option value="pathways_ids">KEGG pathway id(s)</option>
50 <option value="pathways_file">KEGG pathway id(s) from file</option>
51 </param>
52 <when value="pathways_names">
53 <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'>
54 <options from_data_table="hsa_pathways">
55 <filter type="sort_by" column="1"/>
56 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
57 </options>
58 </param>
59 </when>
60 <when value="pathways_ids">
61 <param name="pids" type="text" label="Copy/paste your pathway id(s)" help='IDs must be separated by tab, space or carriage return into the form field, for example: "hsa00010 hsa05412"'>
62 <sanitizer invalid_char=''>
63 <valid initial="string.printable">
64 <remove value="&apos;"/>
65 </valid>
66 <mapping>
67 <add source="&#x20;" target=""/>
68 </mapping>
69 </sanitizer>
70 </param>
71 </when>
72 <when value="pathways_file">
73 <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'" />
74 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contains a header?" />
75 <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' />
76 </when>
77 </conditional>
78 </when>
79 <when value="mmu">
80 <conditional name="pathways">
81 <param name="pathways_id" type="select" label="Provide your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
82 <option value="pathways_names">KEGG pathway name(s)</option>
83 <option value="pathways_ids">KEGG pathway id(s)</option>
84 <option value="pathways_file">KEGG pathway id(s) from file</option>
85 </param>
86 <when value="pathways_names">
87 <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'>
88 <options from_data_table="mmu_pathways">
89 <filter type="sort_by" column="1"/>
90 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
91 </options>
92 </param>
93 </when>
94 <when value="pathways_ids">
95 <param name="pids" type="text" label="Copy/paste your pathway id(s)" help='IDs must be separated by tab, space or carriage return into the form field, for example: "mmu00053 mmu00340"'>
96 <sanitizer invalid_char=''>
97 <valid initial="string.printable">
98 <remove value="&apos;"/>
99 </valid>
100 <mapping>
101 <add source="&#x20;" target=""/>
102 </mapping>
103 </sanitizer>
104 </param>
105 </when>
106 <when value="pathways_file">
107 <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'" />
108 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contain header?" />
109 <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' />
110 </when>
111 </conditional>
112 </when>
113 <when value="rno">
114 <conditional name="pathways">
115 <param name="pathways_id" type="select" label="Enter your pathway(s) name/id" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
116 <option value="pathways_names">KEGG pathway name(s)</option>
117 <option value="pathways_ids">KEGG pathway id(s)</option>
118 <option value="pathways_file">KEGG pathway id(s) from file</option>
119 </param>
120 <when value="pathways_names">
121 <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'>
122 <options from_data_table="rno_pathways">
123 <filter type="sort_by" column="1"/>
124 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
125 </options>
126 </param>
127 </when>
128 <when value="pathways_ids">
129 <param name="pids" type="text" label="Copy/paste your pathway id(s)" help='IDs must be separated by tab, space or carriage return into the form field, for example: "hsa00010 hsa05412"'>
130 <sanitizer invalid_char=''>
131 <valid initial="string.printable">
132 <remove value="&apos;"/>
133 </valid>
134 <mapping>
135 <add source="&#x20;" target=""/>
136 </mapping>
137 </sanitizer>
138 </param>
139 </when>
140 <when value="pathways_file">
141 <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'" />
142 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contains a header?" />
143 <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' />
144 </when>
145 </conditional>
146 </when>
147 </conditional>
148 <param name="id_type" type="select" label="Select your identifiers type :">
149 <option value="uniprotID">Uniprot Accession number</option>
150 <option value="geneID">Entrez gene ID</option>
151 <!--option value="keggid">KEGG genes ID</option-->
152 </param>
153 <conditional name="input" >
154 <param name="ids" type="select" label="Enter your identifiers (Uniprot AC or Entrez gene ID)" help="Copy/paste or ID list from a file (e.g. table)" >
155 <option value="text">Copy/paste your identifiers</option>
156 <option value="file" selected="true">Input file containing your identifiers</option>
157 </param>
158 <when value="text" >
159 <param name="txt" type="text" label="Copy/paste your identifiers" help='IDs must be separated by tab, space or carriage return into the form field, for example: P31946 P62258' >
160 <sanitizer invalid_char=''>
161 <valid initial="string.printable">
162 <remove value="&apos;"/>
163 </valid>
164 <mapping initial="none">
165 <add source="&apos;" target="__sq__"/>
166 </mapping>
167 </sanitizer>
168 </param>
169 </when>
170 <when value="file" >
171 <param name="file" type="data" format="txt,tabular" label="Select a file that contains your list of IDs" help="" />
172 <param name="header" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does your input file contains a header?" />
173 <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' />
174 <conditional name="foldchange" >
175 <param name="fc" type="boolean" checked="false" truevalue="true" falsevalue="false" label="Do you have fold change values to represent on the graph ?" default="false"/>
176 <when value="true">
177 <param name="fc_col" type="text" label="Please enter column(s) number of fold change data separated by ','. 3 columns max" help="For example : c1,c3,c4"/>
178 </when>
179 <when value="false"/>
180 </conditional>
181 </when>
182 </conditional>
183 <param name="native" type="select" label="Choose the output graphical format">
184 <option value="true">KEGG map (.png)</option>
185 <option value="false">Graphviz layout engine (.pdf)</option>
186 </param>
187 </inputs>
188 <outputs>
189 <data name="text_output" format="tsv" label="KEGG pathways visualization text output"/>
190 <collection type="list" label="KEGG pathways map from ${input.file.name}" name="graphviz_output_from_file">
191 <filter>native=="false" and input["ids"] == "file"</filter>
192 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.pdf" ext="pdf" />
193 </collection>
194 <collection type="list" label="KEGG pathways map from ${input.file.name}" name="kegg_graph_output_from_file">
195 <filter>native=="true" and input["ids"] == "file"</filter>
196 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.png" ext="png"/>
197 </collection>
198 <collection type="list" label="KEGG pathways map" name="graphviz_output_from_list">
199 <filter>native=="false" and input["ids"] == "text"</filter>
200 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.pdf" ext="pdf" />
201 </collection>
202 <collection type="list" label="KEGG pathways map" name="kegg_graph_output_from_list">
203 <filter>native=="true" and input["ids"] == "text"</filter>
204 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.png" ext="png" />
205 </collection>
206 </outputs>
207 <tests>
208 <test>
209 <conditional name="input">
210 <param name="ids" value="file"/>
211 <param name="file" value="Lacombe_et_al_2017_OK.txt"/>
212 <param name="header" value="true"/>
213 <param name="ncol" value="c1"/>
214 </conditional>
215 <conditional name="pathways">
216 <param name="pathways_id" value="pathways_ids"/>
217 <param name="pids" value="04514,05167,00010"/>
218 </conditional>
219 <param name="id_type" value="uniprotID"/>
220 <param name="species" value="hsa"/>
221 <param name="native" value="true"/>
222 <output name="kegg_from_file" file="hsa04514.pathview.png" compare="sim_size"/>
223 <output name="kegg_from_file" file="hsa05167.pathview.png" compare="sim_size"/>
224 <output name="kegg_from_file" file="hsa00010.pathview.png" compare="sim_size"/>
225 </test>
226 </tests>
227 <help><![CDATA[
228 This tool map a list of Uniprot Accession number or Entrez gene ID to KEGG pathway with pathview R package.
229
230 You can map Entrez gene IDs / Uniprot accession number from three species : human, mouse and rat.
231
232 If your input have another type of IDs, please use the ID_Converter tool.
233
234 **Input:**
235
236
237 - KEGG Pathways IDs to be used for mapping can be set by:
238 - chosing from the KEGG pathways name list
239 - giving a list (copy/paste)
240 - importing a list from a dataset (column) - output of KEGG pathways identification and coverage can be used (1st column)
241 - Genes/proteins ids to map can be either a list of Entrez genes IDs / Uniprot accession number or a file (tabular, tsv, txt) containing at least one column of Entrez genes IDs / Uniprot accession number.
242 - fold change values (up to three columns) from a dataset (same dataset as for Genes/proteins ids to map)
243
244 You can see below an example of an input file with identifiers (uniprot_AC) and fold_change values.
245
246 .. csv-table:: Simulated data
247 :header: "Uniprot_AC","Protein.name","Number_of_peptides","fc_values 1","fc_values 2","fc_values 3"
248
249 "P15924","Desmoplakin","69","0.172302292051025","-0.757435966487116","0.0411240398990759"
250 "P02538","Keratin, type II cytoskeletal 6A","53","-0.988842456122076","0.654626325100182","-0.219153396366064"
251 "P02768","Serum albumin","44","-0.983493243315454","0.113752002761474","-0.645886132600729"
252 "P08779","Keratin, type I cytoskeletal 16","29","0.552302597284443","-0.329045605110646","2.10616106806788"
253
254 |
255
256 **Output:**
257
258 - a **collection dataset** named 'KEGG pathways map from <dataset>', one file (png or pdf) for each given pathway.
259 - a **summary text file** (.tsv) of the mapping(s) with the following columns
260 - **KEGG pathway ID**: KEGG pathway(s) used to map given genes/proteins ids
261 - **pathway name**: name(s) of KEGG pathway(s) used for mapping
262 - **nb of Uniprot_AC used** (only when Uniprot accession number is given): number of Uniprot accession number which will be converted to Entrez genes IDs
263 - **nb of Entrez gene ID used**: number of Entrez gene IDs used for mapping
264 - **nb of Entrez gene ID mapped**: number of Entrez gene IDs mapped on a given pathway
265 - **nb of Entrez gene ID in the pathway**: number total of Entrez gene IDs in a given pathway
266 - **ratio of Entrez gene ID mapped**: number of Entrez gene IDs mapped / number total of Entrez gene IDs
267 - **Entrez gene ID mapped**: list of mapped Entrez gene IDs
268 - **uniprot_AC mapped** (only when Uniprot accession number is given): list of Uniprot accession number corresponding to the mapped Entrez gene IDs
269
270 -----
271
272 .. class:: infomark
273
274 **Database:**
275
276 KEGG Pathways names list are from http://rest.kegg.jp/list/pathway/
277
278 User manual / Documentation: http://www.bioconductor.org/packages/release/bioc/html/pathview.html
279
280
281 -----
282
283 .. class:: infomark
284
285 **Authors**
286
287 David Christiany, Florence Combes, Yves Vandenbrouck CEA, INSERM, CNRS, Grenoble-Alpes University, BIG Institute, FR
288
289 Sandra Dérozier, Olivier Rué, Christophe Caron, Valentin Loux INRA, Paris-Saclay University, MAIAGE Unit, Migale Bioinformatics platform
290
291 This work has been partially funded through the French National Agency for Research (ANR) IFB project.
292
293 Contact support@proteore.org for any questions or concerns about the Galaxy implementation of this tool.
294 ]]></help>
295 <citations>
296 <citation type="doi">10.1093/nar/gkx372</citation>
297 <citation type="bibtex">
298 @misc{renameTODO,
299 author = {Weijun Luo},
300 year = {2013},
301 title = {pathview},
302 url = {https://bioconductor.org/packages/release/bioc/html/pathview.html},
303 }</citation>
304 </citations>
305 </tool>