Next changeset 1:091a9d638d78 (2018-11-15) |
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/meme_chip commit 9068afc3812495aaf88c9a2f5a224c634d634742 |
added:
get_meme_motif_databases.py macros.xml meme_chip.xml meme_motif_databases.loc.sample test-data/input1.fasta test-data/output1.html tool_data_table_conf.xml.sample |
b |
diff -r 000000000000 -r 6095db402811 get_meme_motif_databases.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/get_meme_motif_databases.py Fri Apr 20 09:03:44 2018 -0400 |
[ |
@@ -0,0 +1,11 @@ +import os + + +def get_meme_motif_database_options(file_path): + options = [] + if not os.path.isdir(file_path): + return options + for i, file_name in enumerate(os.listdir(file_path)): + full_path = os.path.join(file_path, file_name) + options.append((file_name, full_path, i == 0)) + return options |
b |
diff -r 000000000000 -r 6095db402811 macros.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/macros.xml Fri Apr 20 09:03:44 2018 -0400 |
b |
@@ -0,0 +1,11 @@ +<?xml version='1.0' encoding='UTF-8'?> +<macros> + <token name="@WRAPPER_VERSION@">4.11.2</token> + <xml name="requirements"> + <requirements> + <requirement type="package" version="1.3.23">graphicsmagick</requirement> + <requirement type="package" version="4.11.2">meme</requirement> + </requirements> + </xml> +</macros> + |
b |
diff -r 000000000000 -r 6095db402811 meme_chip.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/meme_chip.xml Fri Apr 20 09:03:44 2018 -0400 |
[ |
b'@@ -0,0 +1,224 @@\n+<tool id="meme_chip" name="MEME-ChIP" version="4.11.2">\n+ <description>- motif discovery, enrichment analysis and clustering on large nucleotide datasets</description>\n+ <macros>\n+ <import>macros.xml</import>\n+ </macros>\n+ <expand macro="requirements" />\n+ <code file="get_meme_motif_databases.py" />\n+ <command detect_errors="exit_code"><![CDATA[\n+#import os\n+#set primary_output = $os.path.join($output.files_path, "index.html")\n+meme-chip \'$input\'\n+-noecho\n+#if $control:\n+ -neg \'$control\'\n+#end if\n+$sequence_alphabet\n+-o \'$output.files_path\'\n+#if str($options_type_cond.options_type)==\'advanced\':\n+ ## FIXME: CentriMo cannot be run, See the comments in the input section.\n+ ## #set run_centrimo = $options_type_cond.run_centrimo_cond.run_centrimo\n+ ## #if str($run_centrimo) == "yes":\n+ ## -db $options_type_cond.run_centrimo_cond.meme_motif_databases.fields.path\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_local:\n+ ## -centrimo-local\n+ ## #end if\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_score:\n+ ## -centrimo-score $options_type_cond.run_centrimo_cond.centrimo_score\n+ ## #end if\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_maxreg:\n+ ## -centrimo-maxreg $options_type_cond.run_centrimo_cond.centrimo_maxreg\n+ ## #end if\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_ethresh:\n+ ## -centrimo-ethresh $options_type_cond.run_centrimo_cond.centrimo_ethresh\n+ ## #end if\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_noseq:\n+ ## -centrimo-noseq\n+ ## #end if\n+ ## #if $options_type_cond.run_centrimo_cond.centrimo_flip:\n+ ## -centrimo-flip\n+ ## #end if\n+ ## #end if\n+ $options_type_cond.search_given_strand\n+ -order $options_type_cond.background_model_order\n+ #if str($options_type_cond.subsampling_cond.subsampling) == "no":\n+ -norand\n+ #if $options_type_cond.subsampling_cond.subsampling.seed:\n+ -seed $options_type_cond.subsampling_cond.subsampling.seed\n+ #end if\n+ #end if\n+ #if $options_type_cond.nmeme:\n+ -nmeme $options_type_cond.nmeme\n+ #end if\n+ #if $options_type_cond.ccut:\n+ -ccut $options_type_cond.ccut\n+ #end if\n+ -group-thresh $options_type_cond.group_threash\n+ #if str($options_type_cond.group_weak):\n+ -group-weak $options_type_cond.group_weak\n+ #end if\n+ -filter-thresh $options_type_cond.filter_thresh\n+ $options_type_cond.old_clustering\n+ -meme-mod $options_type_cond.meme_mod\n+ #if $options_type_cond.meme_minw:\n+ -meme-minw $options_type_cond.meme_minw\n+ #end if\n+ #if $options_type_cond.meme_maxw:\n+ -meme-maxw $options_type_cond.meme_maxw\n+ #end if\n+ #if $options_type_cond.meme_nmotifs:\n+ -meme-nmotifs $options_type_cond.meme_nmotifs\n+ #end if\n+ #if $options_type_cond.meme_minsites:\n+ -meme-minsites $options_type_cond.meme_minsites\n+ #end if\n+ #if $options_type_cond.meme_maxsites:\n+ -meme-maxsites $options_type_cond.meme_maxsites\n+ #end if\n+ $options_type_cond.meme_pal\n+ -dreme-e $options_type_cond.dreme_e\n+ -dreme-m $options_type_cond.dreme_m\n+ -spamo-skip\n+ -fimo-skip\n+#end if\n+&& rm \'$output\'\n+&& ln -s $primary_output \'$output\'\n+ ]]></command>\n+ <inputs>\n+ <param name="input" type="data" format="fasta" label="Primary sequences" help="Nucleotide sequences must have equal length"/>\n+ <param name="control" type="data" format="fasta" optional="true" label="Control sequences" help="If no selection, positive sequences in the input are shuffled to create the negative set"/>\n+ <param name="sequence_alphabet" type="select" label="Sequence alphabet">\n+ <option value="-dna" selected="true">DNA</option>\n+ <option value="-rna">RNA</option>\n+ </param>\n+ <c'..b'r">Any number of repititions</option>\n+ </param>\n+ <param name="meme_minw" type="integer" optional="true" value="0" min="0" label="Minimum motif width"/>\n+ <param name="meme_maxw" type="integer" optional="true" value="0" min="0" label="Maximum motif width"/>\n+ <param name="meme_nmotifs" type="integer" optional="true" value="0" min="0" label="Maximum number of motifs to find"/>\n+ <param name="meme_minsites" type="integer" optional="true" value="0" min="0" label="Minimum number of sites per motif"/>\n+ <param name="meme_maxsites" type="integer" optional="true" value="0" label="Maximum number of sites per motif"/>\n+ <param argument="-meme_pal" type="boolean" truevalue="-meme-pal" falsevalue="" checked="False" label="Look for palindromes only"/>\n+ <param name="dreme_e" type="float" value="0.05" min="0" label="Stop DREME searching after reaching this E-value threshold"/>\n+ <param name="dreme_m" type="integer" value="10" min="1" label="Stop DREME searching after finding this many motifs" />\n+ </when>\n+ </conditional>\n+ <param name="non_commercial_use" label="I certify that I am not using this tool for commercial purposes." type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False">\n+ <validator type="expression" message="This tool is only available for non-commercial use.">value == True</validator>\n+ </param>\n+ </inputs>\n+ <outputs>\n+ <data name="output" format="html" label="${tool.name} (html) on ${on_string}"/>\n+ </outputs>\n+ <tests>\n+ <test>\n+ <param name="input" value="input1.fasta" ftype="fasta"/>\n+ <param name="non_commercial_use" value="True"/>\n+ <output name="output" file="output1.html" ftype="html" compare="contains"/>\n+ </test>\n+ <test>\n+ <param name="input" value="input1.fasta" ftype="fasta"/>\n+ <param name="sequence_alphabet" value="-rna"/>\n+ <param name="options_type" value="advanced"/>\n+ <param name="background_model_order" value="0"/>\n+ <param name="non_commercial_use" value="True"/>\n+ <output name="output" file="output1.html" ftype="html" compare="contains"/>\n+ </test>\n+ </tests>\n+ <help>\n+.. class:: warningmark\n+\n+**WARNING: This tool is only available for non-commercial use. Use for educational, research and non-profit purposes is permitted.\n+Before using, be sure to review, agree, and comply with the license.**\n+\n+MWMW-ChIP perform motif discovery, motif enrichment analysis and clustering on large nucleotide datasets.\n+\n+If you want to specify sequence weights, you must include them at the top of your input FASTA file.\n+\n+MEME discovers novel, ungapped motifs (recurring, fixed-length patterns) in your sequences (sample output from sequences).\n+MEME splits variable-length patterns into two or more separate motifs. A motif is a sequence pattern that occurs repeatedly\n+in a group of related sequences. MEME represents motifs as position-dependent letter-probability matrices which describe the\n+probability of each possible letter at each position in the pattern. Individual MEME motifs do not contain gaps. Patterns\n+with variable-length gaps are split by MEME into two or more separate motifs. MEME takes as input a group of sequences and\n+outputs as many motifs as requested. MEME uses statistical modeling techniques to automatically choose the best width, number\n+of occurrences, and description for each motif.\n+\n+.. class:: infomark\n+\n+For detailed information on MEME, click here_, or view the license_.\n+\n+.. _here: http://meme-suite.org/doc/meme.html?man_type=web\n+.. _license: http://meme-suite.org/doc/copyright.html?man_type=web\n+\n+ </help>\n+ <citations>\n+ <citation type="doi">10.1093/bioinformatics/btr189</citation>\n+ </citations>\n+</tool>\n+\n' |
b |
diff -r 000000000000 -r 6095db402811 meme_motif_databases.loc.sample --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/meme_motif_databases.loc.sample Fri Apr 20 09:03:44 2018 -0400 |
b |
@@ -0,0 +1,7 @@ +# This file has the format (white space characters are TAB characters): +# +#<value> <name> <path> <description> +# +#So, meme_motif_databases.loc could look something like this: +# +#2017_12 2017_12 /meme_motif_databases/2017_12 December 2017 |
b |
diff -r 000000000000 -r 6095db402811 test-data/input1.fasta --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/input1.fasta Fri Apr 20 09:03:44 2018 -0400 |
b |
@@ -0,0 +1,66 @@ +>chr21_19617074_19617124_+ +AAAAATTATTACTAGGGAGGGGGCCGGAACCTCGGGACGTGGGTATATAA +>chr21_26934381_26934431_+ +GCGCCTGGTCGGTTATGAGTCACAAGTGAGTTATAAAAGGGTCGCACGTT +>chr21_28217753_28217803_- +CAAAGGGGAGGAGTGGGGTGGGGGTGGGGGTTTCACTGGTCCACTATAAA +>chr21_31710037_31710087_- +AACACCCAGGTTTCTGAGTATATAATCGCCGCACCAAAGAATTTAATTTT +>chr21_31744582_31744632_- +CCCAGGTCTAAGAGCATATATAACTTGGAGTCCAGACTATGACATTCAAA +>chr21_31768316_31768366_+ +AACGTATATAAATGGTCCTGTCCAGATGTGGCATGCAAACTCAGAATCTT +>chr21_31914206_31914256_- +TGACACCCACTACTTAGAGTATAAAATCATTCTGAGAAGTTAGAGACACC +>chr21_31933633_31933683_- +TCAGAGTATATATAAATGTTCCTGTCCAGTCACAGTCACCAAACTGACCT +>chr21_31962741_31962791_- +ACATATAACTCAGGTTGGATAAAATAATTTGTACAAATCAGGAGAGTCAA +>chr21_31964683_31964733_+ +TCTGATTCACTGAGGCATATAAAAGGCCCTCTGCGGAGAAGTGTCCATAC +>chr21_31973364_31973414_+ +aaacttaaaactctataaacttaaaactCTAGAATCTGATCCTGCTATAC +>chr21_31992870_31992920_+ +CTCATACACTATTGAAGATGTATAAAATTTCATTTGCAGATGGTGACATT +>chr21_32185595_32185645_- +TCACCACCCACCAGAGCTGGGATATATAAAGAAGGTTCTGAGACTAGGAA +>chr21_32202076_32202126_- +TGCCCACCAGCTTGAGGTATAAAAAGCCCTGTACGGGAAGAGACCTTCAT +>chr21_32253899_32253949_- +AGCCCCACCCACCAGCAAGGATATATAAAAGCTCAGGAGTCTGGAGTGAC +>chr21_32410820_32410870_- +TCTACCCCACTAATCACTGAGGATGTATAAAAGTCCCAGGGAAGCTGGTG +>chr21_36411748_36411798_- +ATAGTTCTGTATAGTTTCAGTTGGCATCtaaaaattatataactttattt +>chr21_37838750_37838800_- +gatggttttataaggggcctcaccctcggctcagccctcattcttctcct +>chr21_45705687_45705737_+ +CCGGGGCGGAGCGGCCTTTGCTCTTTGCGTGGTCGCGGGGGTATAACAGC +>chr21_45971413_45971463_- +CAGGCCCTGGGCATATAAAAGCCCCAGCAGCCAACAGGctcacacacaca +>chr21_45978668_45978718_- +CAGAGGGGTATAAAGGTTCCGACCACTCAGAGGCCTGGCACGAtcactca +>chr21_45993530_45993580_+ +CCAAGGAGGAGTATAAAAGCCCCACAAACCCGAGCACCTCACTCACTCGC +>chr21_46020421_46020471_+ +GAGACATATAAAAGCCAACATCCCTGAGCACCTAACACACGGactcactc +>chr21_46031920_46031970_+ +GGAAAATACCCAGGGAGGGTATAAAACCTCAGCAGCCAGGGCACACAAAC +>chr21_46046964_46047014_+ +ACAAGGCCAGGAGGGGTATAAAAGCCTGAGAGCCCCAAGAACctcacaca +>chr21_46057197_46057247_+ +ATTGCTGAGTCTCCTGCTGGGAAAACACAGGCCCTGGGCATATAAAAGCC +>chr21_46086869_46086919_- +GACAGGTGTGCTTCTGTGCTGTGGGGATGCCTGGGCCCAGGTATAAAGGC +>chr21_46102103_46102153_- +AGGTGTGTGCTTCTGTGCTGTGGGGATGCCTGGGTCCAGGTATAAAGGCT +>chr21_47517957_47518007_+ +CCTGGCGGCGGGGCGGGTCAGGCCGGCGGGGCGGGGTATAAAGGGGGCGG +>chr21_47517957_47518007_+ +CCTGGCGGCGGGGCGGGTCAGGCCGGCGGGGCGGGGTATAAAGGGGGCGG +>chr21_47517957_47518007_+ +CCTGGCGGCGGGGCGGGTCAGGCCGGCGGGGCGGGGTATAAAGGGGGCGG +>chr21_47575506_47575556_- +TGAGAAGCCGGTGGGGAGGTGCTGCCGGTGAGCGTATAAAGGCCCTGGCG +>chr21_47575506_47575556_- +TGAGAAGCCGGTGGGGAGGTGCTGCCGGTGAGCGTATAAAGGCCCTGGCG |
b |
diff -r 000000000000 -r 6095db402811 test-data/output1.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/output1.html Fri Apr 20 09:03:44 2018 -0400 |
[ |
@@ -0,0 +1,86 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8"> + <title>MEME ChIP</title> + </head> + <body onload="page_loaded()" onpageshow="page_shown(event)" + onresize="page_resize()" onscroll="delayed_process_draw_tasks()"> + <div class="prog_logo big"> + <h1>MEME-ChIP</h1> + <h2>Motif Analysis of Large Nucleotide Datasets</h2> + </div> + <p> + If you use MEME-ChIP in your research, please cite the following paper:<br /> + </p> + <!-- navigation --> + <div class="pad2"> + <a class="jump" href="#data_sec">Motifs</a> + | + <a class="jump" href="#programs_sec">Programs</a> + | + <a class="jump" href="#input_sec">Input Files</a> + | + <a class="jump" href="#info_sec">Program information</a> + </div> + <!-- alert the user when their browser is not up to the task --> + <noscript><h1 style="color:red">Javascript is required to view these results!</h1></noscript> + <h1 id="html5_warning" style="color:red; display:none;">Your browser does not support canvas!</h1> + <script>if (!window.HTMLCanvasElement) $("html5_warning").style.display = "block";</script> + <!-- write out the job description --> + <span id="ins_desc"></span> + <script>make_description($("ins_desc"), data["description"]);</script> + <!-- write out clustered motifs --> + <h2 class="mainh pad2" id="data_sec">Motifs</h2> + <div class="box"> + <p>The significant motifs + (E-value ≤ <span id="ins_filter_thresh"></span>) + found by the programs MEME, DREME and CentriMo; + clustered by similarity and ordered by E-value.</p> + <script>$("ins_filter_thresh").innerHTML = data["filter_thresh"]; </script> + <div class="motifbox"> + <span class="action" onclick="show_all(true)">Expand All Clusters</span> + <span class="action" onclick="show_all(false)">Collapse All Clusters</span> + </div> + <div id="logos"></div> + <script>make_clustered_motifs($("logos"));</script> + </div> + <!-- write out a list of all programs run --> + <h2 class="mainh pad2" id="programs_sec">Programs</h2> + <div class="box" id="program_listing"></div> + <script>make_program_listing($("program_listing"));</script> + <!-- write out input files --> + <h2 id="input_sec" class="mainh pad2">Input Files</h2> + <div id="input_files" class="box"> + <div id="sequence_db"></div> + <script>make_sequence_db_listing('sequence_db', "Primary Sequences");</script> + <div id="neg_sequence_db"></div> + <script>make_sequence_db_listing('neg_sequence_db', "Control Sequences");</script> + <h4 id="motif_dbs_header">Motifs</h4> + <div id="motif_dbs"></div> + <script>make_motif_db_listing($("motif_dbs"));</script> + </div> + <!-- list information on this program --> + <div id="info_sec" class="bar"> + <div class="subsection"> + <h5 id="version">MEME-ChIP version</h5> + <span id="ins_version"></span> + (Release date: <span id="ins_release"></span>)<br> + </div> + <script> + $("ins_version").innerHTML = data["version"]; + $("ins_release").innerHTML = data["release"]; + </script> + <div class="subsection"> + <h5 id="reference">Reference</h5> + <div class="subsection"> + <h5 id="command">Command line summary</h5> + <textarea id="cmd" rows="5" style="width:100%;" readonly="readonly"> + </textarea> + <script>$("cmd").value = data["cmd"].join(" ");</script> + </div> + </div> + </div> + <div id="scrollpad"></div> + </body> +</html> |
b |
diff -r 000000000000 -r 6095db402811 tool_data_table_conf.xml.sample --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tool_data_table_conf.xml.sample Fri Apr 20 09:03:44 2018 -0400 |
b |
@@ -0,0 +1,7 @@ +<tables> + <!-- Location of meme_motif_databases --> + <table name="meme_motif_databases" comment_char="#" allow_duplicate_entries="False"> + <columns>value, dbkey, name, path</columns> + <file path="tool-data/meme_motif_databases.loc" /> + </table> +</tables> |