diff maf_stats.xml @ 0:5a92f4c476b5 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/interval2maf/ commit f7b04f8c6edca90b1e9bc867a1569996aec76d7a"
author iuc
date Thu, 13 Aug 2020 09:30:47 -0400
parents
children 0c84cce7b030
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/maf_stats.xml	Thu Aug 13 09:30:47 2020 -0400
@@ -0,0 +1,130 @@
+<tool id="maf_stats1" name="MAF Coverage Stats" version="1.0.1">
+    <description>Alignment coverage information</description>
+    <command>
+        <![CDATA[
+        #if $maf_source_type.maf_source == 'cached'
+            #set $tab = '\t'
+            echo '$maf_source_type.mafType.fields.name${tab}$maf_source_type.mafType.fields.value${tab}$maf_source_type.mafType.fields.indexed_for${tab}$maf_source_type.mafType.fields.exists_in_maf${tab}$maf_source_type.mafType.fields.path' >> ./maf_index.loc &&
+        #end if
+        python '$__tool_directory__/maf_stats.py' $maf_source_type.maf_source
+        #if $maf_source_type.maf_source == 'user':
+            '$input2'
+        #else:
+            $maf_source_type.mafType.fields.value
+        #end if
+        '$input1' '$out_file1' $dbkey ${input1.metadata.chromCol} ${input1.metadata.startCol} ${input1.metadata.endCol} $summary '.'
+        #if $maf_source_type.maf_source == 'user':
+            '$input2.metadata.maf_index'
+        #end if
+        ]]>
+    </command>
+    <inputs>
+        <param format="interval" name="input1" label="Interval File" type="data">
+            <validator type="unspecified_build" />
+        </param>
+        <conditional name="maf_source_type">
+            <param name="maf_source" type="select" label="MAF Source">
+                <option value="cached" selected="true">Locally Cached Alignments</option>
+                <option value="user">Alignments in Your History</option>
+            </param>
+            <when value="user">
+                <param format="maf" name="input2" label="Choose alignments" type="data">
+                    <options>
+                        <filter type="data_meta" ref="input1" key="dbkey" />
+                    </options>
+                    <validator type="dataset_ok_validator" />
+                </param>
+                <param name="species" type="select" display="checkboxes" multiple="true" label="Choose species" help="Select species to be included in the final alignment">
+                    <options>
+                        <filter type="data_meta" ref="input2" key="species" />
+                    </options>
+                </param>
+            </when>
+            <when value="cached">
+                <param name="mafType" type="select" label="Choose alignments">
+                    <options from_data_table="maf_indexes">
+                        <column name="name" index="0"/>
+                        <column name="value" index="1"/>
+                        <column name="indexed_for" index="2"/>
+                        <column name="exists_in_maf" index="3" />
+                        <column name="path" index="4" />
+                        <filter type="data_meta" ref="input1" key="dbkey" column="2" multiple="True" separator=","/>
+                        <validator type="no_options" message="No alignments are available for the build associated with the selected interval file"/>
+                    </options>
+                </param>
+                <param name="species" type="select" display="checkboxes" multiple="true" label="Choose species" help="Select species to be included in the final alignment">
+                    <options from_data_table="maf_indexes">
+                        <column name="value" index="3"/>
+                        <filter type="multiple_splitter" column="3" separator=","/>
+                    </options>
+                </param>
+            </when>
+        </conditional>
+        <param name="summary" type="select" label="Type of Output">
+            <option value="false" selected="true">Coverage by Region</option>
+            <option value="true">Summarize Coverage</option>
+        </param>
+    </inputs>
+    <outputs>
+        <data format="interval" name="out_file1" metadata_source="input1">
+            <change_format>
+                <when input="summary" value="true" format="tabular" />
+            </change_format>
+        </data>
+    </outputs>
+    <tests>
+        <test>
+            <param name="input1" value="maf_stats-in1.bed" dbkey="hg38" ftype="bed"/>
+            <param name="maf_source" value="cached"/>
+            <param name="mafType" value="TEST"/>
+            <output name="out_file1" file="maf_stats-out1.dat"/>
+            <param name="summary" value="false"/>
+        </test>
+        <test>
+            <param name="input1" value="maf_stats-in2.bed" dbkey="hg38" ftype="bed"/>
+            <param name="maf_source" value="cached"/>
+            <param name="mafType" value="TEST"/>
+            <output name="out_file1" file="maf_stats-out2.dat"/>
+            <param name="summary" value="true"/>
+        </test>
+    </tests>
+    <help>
+        **What it does**
+
+        This tool takes a MAF file and an interval file and relates coverage information by interval for each species.
+        If a column does not exist in the reference genome, it is not included in the output.
+
+        Consider the interval: "chrX 1000 1100 myInterval"
+        Let's suppose we want to do stats on three way alignments for H, M, and R. The result look like this:
+
+            chrX 1000 1100 myInterval H XXX YYY
+
+            chrX 1000 1100 myInterval M XXX YYY
+
+            chrX 1000 1100 myInterval R XXX YYY
+
+
+        where XXX and YYY are:
+
+            XXX = number of nucleotides
+
+            YYY = number of gaps
+
+        ----
+
+        Alternatively, you can request only summary information for a set of intervals:
+
+        ========  ===========  ========
+        #species  nucleotides  coverage
+        ========  ===========  ========
+        hg18         30639      0.2372
+        rheMac2      7524       0.0582
+        panTro2      30390      0.2353
+        ========  ===========  ========
+
+        where **coverage** is the number of nucleotides divided by the total length of the provided intervals.
+    </help>
+    <citations>
+        <citation type="doi">10.1093/bioinformatics/btr398</citation>
+    </citations>
+</tool>