view amova.xml @ 6:d0074e20ae76 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/mothur commit debdcdbb89f9bf3e2c3eed05cb078eddb27d4684"
author iuc
date Mon, 02 Dec 2019 06:02:05 -0500
parents 5aa5d26efeea
children 8642712a607c
line wrap: on
line source

<tool profile="16.07" id="mothur_amova" name="Amova" version="@WRAPPER_VERSION@.0">
    <description>Analysis of molecular variance</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="stdio"/>
    <expand macro="version_command"/>
    <command><![CDATA[
@SHELL_OPTIONS@

## create symlinks to input datasets
ln -s '$phylip' phylip.dat &&
ln -s '$design' design.dat &&

echo 'amova(
    phylip=phylip.dat,
    iters=$iters,
    alpha=$alpha,
    #if $sets:
        sets=${ str($sets).replace(",","-") },
    #end if
    design=design.dat
)'
| sed 's/ //g'  ## mothur trips over whitespace
| mothur
| tee mothur.out.log
    ]]></command>
    <inputs>
        <param argument="phylip" type="data" format="mothur.dist,mothur.lower.dist,mothur.square.dist" label="phylip - Distance Matrix"/>
        <param argument="design" type="data" format="mothur.design" label="design - assign groups to new grouping"
            help="design has 2 TAB-separated columns: group and grouping (Tool: Make_Design)"/>
        <param argument="alpha" type="float" optional="true" min="0" value="0.05" label="alpha - acceptable stopping precision" help="default: 0.05"/>
        <param argument="iters" type="integer" value="1000" min="0" label="iters - Number of random configuration to try" help="default: 1000"/>
        <param name="sets" type="text" label="sets - Which of the sets in your design file you would like to analyze?" help="separate sets by dashes or commas, e.g. set1,set2 or set1-set2-set3"/>
        <!-- TODO: update galaxy datatypes to set metadata for design files, then can switch to a select box
        <param argument="sets" type="select" multiple="true" label="sets - Which of the sets in your design file you would like to analyze."
            help="The set names are separated by dashes. The defualt is all sets in designfile">
            <options>
                <filter type="data_meta" ref="design" key="sets"/>
            </options>
        </param>
        -->
        <expand macro="param-savelog"/>
    </inputs>
    <outputs>
        <expand macro="logfile-output"/>
        <data name="amova" format="tabular" from_work_dir="phylip.amova" label="${tool.name} on ${on_string}: amova"/>
    </outputs>
    <tests>
        <test>
            <param name="phylip" value="amazon.dist"/>
            <param name="design" value="amazon.design"/>
            <output name="amova" ftype="tabular">
                <assert_contents>
                    <has_line_matching expression="^A-B\tAmong\tWithin\tTotal$"/>
                    <has_line_matching expression="^SS\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_line_matching expression="^df\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_line_matching expression="^MS\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_text text="p-value"/>
                </assert_contents>
            </output>
            <param name="savelog" value="true"/>
            <expand macro="logfile-test"/>
        </test>
        <test><!-- test with sets specified -->
            <param name="phylip" value="amazon.dist"/>
            <param name="design" value="amazon.design"/>
            <param name="sets" value="A,B"/>
            <output name="amova" ftype="tabular">
                <assert_contents>
                    <has_line_matching expression="^A-B\tAmong\tWithin\tTotal$"/>
                    <has_line_matching expression="^SS\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_line_matching expression="^df\t[0-9\.]+\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_line_matching expression="^MS\t[0-9\.]+\t[0-9\.]+$"/>
                    <has_text text="p-value"/>
                </assert_contents>
            </output>
            <param name="savelog" value="true"/>
            <expand macro="logfile-test"/>
        </test>
    </tests>
    <help><![CDATA[

@MOTHUR_OVERVIEW@

**Command Documentation**

The amova_ command calculates the analysis of molecular variance from a phylip_distance_matrix_,
a nonparametric analog of traditional analysis of variance. This method is widely used in population
genetics to test the hypothesis that genetic diversity within two populations is not significantly
different from that which would result from pooling the two populations.

A design file partitions a list of names into groups.  It is a tab-delimited file with 2 columns: name and group, e.g. :
	=======	=======
	duck	bird
	cow	mammal
	pig	mammal
	goose	bird
	cobra	reptile
	=======	=======

The Make_Design tool can construct a design file from a Mothur dataset that contains group names.


.. _phylip_distance_matrix: https://www.mothur.org/wiki/Phylip-formatted_distance_matrix
.. _amova: https://www.mothur.org/wiki/Amova

    ]]></help>
    <expand macro="citations">
        <citation type="doi">10.1111/j.1442-9993.2001.01070.pp.x</citation>
    </expand>
</tool>