view diffbind.xml @ 5:b5839ce0befb draft

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/diffbind commit b'bd13ffd1c3e126a6dc59dd3c478347ec1b5824a3\n'
author bgruening
date Tue, 16 May 2017 16:25:30 -0400
parents 69138bfd8644
children 6031247f61d4
line wrap: on
line source

<tool id="diffbind" name="DiffBind" version="2.2.1">
    <description> differential binding analysis of ChIP-Seq peak data</description>
    <requirements>
        <requirement type="package" version="2.0.9">bioconductor-diffbind</requirement>
    </requirements>
    <stdio>
        <regex match="Execution halted"
           source="both"
           level="fatal"
           description="Execution halted." />
        <regex match="Input-Error 01"
           source="both"
           level="fatal"
           description="Error in your input parameters: Make sure you only apply factors to selected samples." />
        <regex match="Error in"
           source="both"
           level="fatal"
           description="An undefined error occured, please check your intput carefully and contact your administrator." />
    </stdio>
    <command>
<![CDATA[
        ## seems that diffbind also needs file extensions to work properly
        #set $counter = 1
        #for $sample in $samples:
            ln -s $sample.bamreads #echo str($counter) + "_bamreads.bam"# &&
            ln -s ${sample.bamreads.metadata.bam_index} #echo str($counter) + "_bamreads.bai"# &&
            #if str( $sample.bamcontrol ) != 'None':
                ln -s $sample.bamcontrol #echo str($counter) + "_bamcontrol.bam"# &&
                ln -s ${sample.bamcontrol.metadata.bam_index} #echo str($counter) + "_bamcontrol.bai"# &&
            #end if
            #set $counter = $counter + 1
        #end for

        Rscript $__tool_directory__/diffbind.R
            -i $infile
            -o $outfile
            -p $plots
            -f $format
]]>
    </command>
    <configfiles>
<configfile name="infile">
#set $counter = 1
#for $sample in $samples:
#if str( $sample.bamcontrol ) != 'None' and $counter == 1:
SampleID,Tissue,Factor,Condition,Replicate,bamReads,bamControl,Peaks
#elif $counter == 1:
SampleID,Tissue,Factor,Condition,Replicate,bamReads,Peaks
#end if
#if str( $sample.bamcontrol ) != 'None':
$sample.sample_id,$sample.tissue,$sample.factor,$sample.condition,$sample.replicate,#echo str($counter) + '_bamreads.bam'#,#echo str($counter) + '_bamcontrol.bam'#,$sample.peaks
#else:
$sample.sample_id,$sample.tissue,$sample.factor,$sample.condition,$sample.replicate,#echo str($counter) + '_bamreads.bam'#,$sample.peaks
#end if
#set $counter = $counter + 1
#end for
</configfile>
    </configfiles>
    <inputs>
        <repeat name="samples" title="Samples" min="2">
            <param name="sample_id" type="text" value="Sample ID" label="Specify a sample id" help="e.g. BT474.1-" />
            <param name="tissue" type="text" value="Tissue" label="Specify the tissue" help="e.g. BT474" />
            <param name="factor" type="text" value="Factor Name" label="Specify a factor name" help="e.g. ER" />
            <param name="condition" type="text" value="Condition" label="Specify the condition" help="e.g. Resistent" />
            <param name="replicate" type="integer" value="1" label="Specify the replicate number" help="e.g. 1" />
            <param format="bam" name="bamreads" type="data" label="Read BAM file" help="Specify the Read BAM file, used for Peak calling."/>
            <param format="bam" name="bamcontrol" type="data" optional="True" label="Control BAM file" help="If specifying a control BAM file for this sample, then all samples are required to specify one."/>
            <param format="bed" name="peaks" type="data" label="Peak file" help="Result of your Peak calling experiment."/>
        </repeat>
        <param name="pdf" type="boolean" truevalue="" falsevalue="" checked="true"
            label="Visualising the analysis results"
            help="output an additional PDF files" />
        <param name="format" type="select" label="Output Format">
            <option value="bed">BED</option>
            <option value="gff">GFF</option>
            <option value="wig">WIG</option>
        </param>
    </inputs>
    <outputs>
        <data format="bed" name="outfile" label="Differential binding sites on ${on_string}">
            <change_format>
                <when input="format" value="wig" format="wig" />
                <when input="format" value="gff" format="gff" />
            </change_format>
        </data>
        <data format="pdf" name="plots" label="Differential binding sites on ${on_string}">
            <filter>pdf == True</filter>
        </data>
    </outputs>
    <help>
<![CDATA[

What it does
************

Diffbind provides functions for  processing  ChIP-Seq  data  enriched  for  genomic  loci  where  specific  protein/DNA  binding  occurs,  including  peak sets  identified  by  ChIP-Seq  peak  callers  and  aligned  sequence  read  datasets.

Input
*****

* You have to specify your samples. Here is one example::

    ID      Tissue  Factor  Condition   Treatment   Replicate   Caller  Intervals
    BT4741  BT474   ER      Resistant   Full-Media  1           raw     1084

* BAM file which contains the mapped sequencing reads can be associated with each peakset
* Control BAM file represents a control dataset and are optional, but have to specified for all when used.
* Peak file: Result of your Peak calling experiment

Output
******

As output format you can choose BED, GFF, WIG.

References
**********

DiffBind_ Authors:  Rory Stark, Gordon Brown (2011)

.. _DiffBind: http://www.bioconductor.org/packages/release/bioc/html/DiffBind.html

Wrapper authors: Bjoern Gruening, Pavankumar Videm

]]>
    </help>
    <citations>
        <citation type="doi">doi:10.1038/nature10730</citation>
    </citations>
</tool>