diff cpm_tpm_rpk.xml @ 1:b74bab5157c4 draft

planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/cpm_tpm_rpk commit d46436d5d73356c8803d6d97a110a2754e8a03fb
author artbio
date Tue, 05 Feb 2019 19:51:38 -0500
parents 35d032c46a4e
children 563337e780ce
line wrap: on
line diff
--- a/cpm_tpm_rpk.xml	Wed Jul 25 13:05:17 2018 -0400
+++ b/cpm_tpm_rpk.xml	Tue Feb 05 19:51:38 2019 -0500
@@ -1,34 +1,42 @@
-<tool id="cpm_tpm_rpk" name="Generate CPM, TPM, RPK" version="0.1.0">
+<tool id="cpm_tpm_rpk" name="Generate CPM, TPM, RPK" version="0.2.0">
     <description>from raw counts expression values</description>
     <requirements>
         <requirement type="package" version="1.3.2=r3.3.2_0">r-optparse</requirement>
+        <requirement type="package" version="0.13=r3.3.2_0">r-rtsne</requirement>
+        <requirement type="package" version="2.2.1=r3.3.2_0">r-ggplot2</requirement>
     </requirements>
     <stdio>
         <exit_code range="1:" level="fatal" description="Tool exception" />
     </stdio>
     <command detect_errors="exit_code"><![CDATA[ 
-Rscript $__tool_directory__/cpm_tpm_rpk.R 
--d $input 
--t $option.type_transfo 
--s $input_sep 
--c $input_header 
-#if $option.type_transfo == "tpm":
--f $option.gene_file 
---gene_sep $option.gene_sep 
---gene_header $option.gene_header
-#end if 
-#if $option.type_transfo == "rpk":
--f $option.gene_file 
---gene_sep $option.gene_sep 
---gene_header $option.gene_header
-#end if
--l $log
-#if $log == "FALSE":
--o ${output}
-#end if
-#if $log == "TRUE":
--o ${output_log}
-#end if
+        Rscript $__tool_directory__/cpm_tpm_rpk.R 
+            -d $input 
+            -t $option.type_transfo 
+            -s $input_sep 
+            -c $input_header 
+            #if $option.type_transfo == "tpm":
+                -f $option.gene_file 
+                --gene_sep $option.gene_sep 
+                --gene_header $option.gene_header
+            #end if 
+            #if $option.type_transfo == "rpk":
+                -f $option.gene_file 
+                --gene_sep $option.gene_sep 
+                --gene_header $option.gene_header
+            #end if
+            -l $log
+            #if $log == "FALSE":
+                -o ${output}
+            #else if $log == "TRUE":
+                -o ${output_log}
+            #end if
+            #if $visu_option.visualisation == "tsne":
+               --tsne 'TRUE'
+               --seed '$visu_option.seed'
+               --perp '$visu_option.perp'
+               --theta '$visu_option.theta'
+               --tsne_out '$tsne_out'
+            #end if
 ]]></command>
     <inputs>
         <param name="input" type="data" format="txt" label="Raw counts of expression data"/>
@@ -44,49 +52,61 @@
             <option value="TRUE" selected="true">Yes</option>
             <option value="FALSE">No</option>
         </param>
-                <conditional name="option">
-                    <param name="type_transfo" type="select" label="Type of transformation">
-                              <option value="cpm" selected="true">CPM</option>
-                               <option value="tpm">TPM</option>
-                               <option value="rpk">RPK</option>
-                       </param>
-            <when value="tpm">
-                <param name="gene_file" type="data" format="txt" label="Gene length file"/> 
-                <param name="gene_sep" type="select" label="Gene length column separator">
-                    <option value="tab" selected="true">Tabs</option>
-                           <option value=",">Commas</option>
-                    <option value="\ ">Whitespaces</option>
-                    <option value=".">Dots</option>
-                    <option value="_">Underscores</option>
-                    <option value="-">Dashes</option>
-                </param>
-                <param name="gene_header" type="select" label="Consider first line of gene length file as header ?">
-                    <option value="TRUE" selected="true">Yes</option>
-                    <option value="FALSE">No</option>
+            <conditional name="option">
+                <param name="type_transfo" type="select" label="Type of transformation">
+                    <option value="cpm" selected="true">CPM</option>
+                    <option value="tpm">TPM</option>
+                    <option value="rpk">RPK</option>
                 </param>
-            </when>
-                        <when value="rpk">
-                                <param name="gene_file" type="data" format="txt" label="Gene length file"/>
-                                <param name="gene_sep" type="select" label="Gene length column separator">
-                                        <option value="tab" selected="true">Tabs</option>
-                                        <option value=",">Commas</option>
-                                        <option value="\ ">Whitespaces</option>
-                                        <option value=".">Dots</option>
-                                        <option value="_">Underscores</option>
-                                        <option value="-">Dashes</option>
-                                </param>
-                                <param name="gene_header" type="select" label="Consider first line of gene length file as header ?">
-                                        <option value="TRUE" selected="true">Yes</option>
-                                        <option value="FALSE">No</option>
-                                </param>
-                        </when>
-            <when value="cpm">
-            </when>
-        </conditional>
+                <when value="tpm">
+                    <param name="gene_file" type="data" format="txt" label="Gene length file"/> 
+                    <param name="gene_sep" type="select" label="Gene length column separator">
+                        <option value="tab" selected="true">Tabs</option>
+                        <option value=",">Commas</option>
+                        <option value="\ ">Whitespaces</option>
+                        <option value=".">Dots</option>
+                        <option value="_">Underscores</option>
+                        <option value="-">Dashes</option>
+                    </param>
+                    <param name="gene_header" type="select" label="Consider first line of gene length file as header ?">
+                        <option value="TRUE" selected="true">Yes</option>
+                        <option value="FALSE">No</option>
+                    </param>
+                </when>
+                <when value="rpk">
+                    <param name="gene_file" type="data" format="txt" label="Gene length file"/>
+                    <param name="gene_sep" type="select" label="Gene length column separator">
+                        <option value="tab" selected="true">Tabs</option>
+                        <option value=",">Commas</option>
+                        <option value="\ ">Whitespaces</option>
+                        <option value=".">Dots</option>
+                        <option value="_">Underscores</option>
+                        <option value="-">Dashes</option>
+                    </param>
+                    <param name="gene_header" type="select" label="Consider first line of gene length file as header ?">
+                        <option value="TRUE" selected="true">Yes</option>
+                        <option value="FALSE">No</option>
+                    </param>
+                </when>
+                <when value="cpm">
+                </when>
+            </conditional>
         <param name="log" type="select" label="Data should be log transformed ?">
             <option value="FALSE" selected="true">No</option>
             <option value="TRUE">Yes</option>
         </param>
+        <conditional name="visu_option">
+            <param name="visualisation" type="select" label="Visualisation of data with various dimensionality reduction methods" >
+                <option value="no" selected="true">No visualisation</option>
+                <option value="tsne" >tsne</option>
+            </param>
+            <when value="tsne">
+                    <param name="seed" value="42.0" type="float" label="Seed value for reproducibiity" help="Set to 42 as default" />
+                    <param name="perp" value="10.0" type="float" label="perplexity"/> 
+                    <param name="theta" value="1.0" type="float" label="theta"/> 
+            </when>
+            <when value="no" />
+        </conditional>
     </inputs>
     <outputs>
         <data name="output" format="tabular" label="${option.type_transfo} from ${on_string}">
@@ -94,9 +114,24 @@
         </data>
         <data name="output_log" format="tabular" label="log2(${option.type_transfo} +1) from ${on_string}">
             <filter>log == "TRUE"</filter>
-                </data>
+        </data>
+        <data name="tsne_out" format="pdf" label="tsne from ${on_string}">
+            <filter>visu_option['visualisation'] == 'tsne'</filter>
+        </data>
     </outputs>
     <tests>
+        <!-- test t-SNE -->
+        <test>
+            <param name="input" value="counts.tab" ftype="tabular"/>
+            <param name="type_transfo" value="cpm"/>
+            <param name="visualisation" value="tsne"/>
+            <param name="seed" value="49"/>
+            <param name="perp" value="2"/>
+            <param name="theta" value="1" />
+            <output name="output" file="cpm.tab" ftype="tabular"/>
+            <output name="tsne_out" file="tsne.pdf" ftype="pdf"/>
+        </test>
+        <!-- test without t-SNE -->
         <test>
             <param name="input" value="counts.tab" ftype="tabular"/>
             <param name="type_transfo" value="cpm"/>
@@ -143,7 +178,7 @@
 
 **What it does**
 
-And returns a table of normalized expression values.
+Takes a raw count expression matrix and returns a table of normalized expression values.
 
 Normalization can be: