Mercurial > repos > jjohnson > mothur_toolsuite
changeset 7:7bfe1f843858
Support Mothur v1.20
trim.seqs - added name parameter and optional trim.names output
phylo.diversity - group optional, put group and groups in conditional - breaks
get.lineage remove.lineage - allow multiple taxons
dist.shared - added processors
consensus.seqs - add cutoff parameter
trim.seqs,phylo.diversity,get.lineage,remove.lineage,dist.shared,consensus.seqs
new tools - chimera.uchime deunique.tree count.seqs
shared/relabund files - Column headings
refactor lib/galaxy/datatypes/metagenomics.py
add filters to label and group selects in tool configs
mothur_wrapper.py updated with new tools params
line wrap: on
line diff
--- a/mothur/README Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/README Mon Jun 27 10:12:25 2011 -0500 @@ -1,6 +1,6 @@ Provides galaxy tools for the Mothur metagenomics package - http://www.mothur.org/wiki/Main_Page -Install mothur v.1.19.0 on your galaxy system so galaxy can execute the mothur command +Install mothur v.1.20.0 on your galaxy system so galaxy can execute the mothur command ( This version of wrappers is designed for Mothur version 1.19 - it may work on later versions ) http://www.mothur.org/wiki/Download_mothur http://www.mothur.org/wiki/Installation @@ -145,6 +145,7 @@ <tool file="mothur/make.fastq.xml"/> <tool file="mothur/fastq.info.xml"/> <tool file="mothur/summary.seqs.xml"/> + <tool file="mothur/count.seqs.xml"/> <tool file="mothur/reverse.seqs.xml"/> <tool file="mothur/list.seqs.xml"/> <tool file="mothur/get.seqs.xml"/> @@ -174,6 +175,7 @@ <tool file="mothur/chimera.check.xml"/> <tool file="mothur/chimera.pintail.xml"/> <tool file="mothur/chimera.slayer.xml"/> + <tool file="mothur/chimera.uchime.xml"/> <label text="Mothur Operational Taxonomy Unit" id="mothur_taxonomy_unit"/> <tool file="mothur/pre.cluster.xml"/> <tool file="mothur/cluster.fragments.xml"/> @@ -229,6 +231,7 @@ <tool file="mothur/phylo.diversity.xml"/> <tool file="mothur/clearcut.xml"/> <tool file="mothur/indicator.xml"/> + <tool file="mothur/deunique.tree.xml"/> <tool file="mothur/TreeVector.xml"/> </section> <!-- metagenomics_mothur --> @@ -237,8 +240,6 @@ Each mothur command has it's own tool_config (.xml) file, but all call the same python wrapper code: mothur_wrapper.py * Every mothur tool will call mothur_wrapper.py script with a --cmd= parameter that gives the mothur command name. -* Many mothur commands require date to be read into memory (using read.dist, read.otu, read.tree) before executed the command, - these are accomplished in the tool_config and mothur_wrapper.py with --READ_cmd= and --READ_<option> parameters. * Every tool will produce the logfile of the mothur run as an output. * When the outputs of a mothur command could be determined in advance, they are included in the --result= parameter to mothur_wrapper.py * When the number of outputs cannot be determined in advance, the name patterns and datatypes of the ouputs @@ -264,10 +265,7 @@ # Each item conatins: a regex pattern for matching filenames and a galaxy datatype (separated by :) # The regex match.groups()[0] is used as the id name of the dataset, and must result in unique name for each output --new_datasets='^\S+?\.((\S+)\.(unique|[0-9.]*)\.dist)$:lower.dist' - # Many mothur commands first require data to be read into memory using: read.otu, read.dist, or read.tree - # This prequisite command and its params are prefixed with 'READ_' - --READ_cmd='read.otu' - --READ_list=/home/galaxy/data/database/files/001/dataset_1557.dat - --READ_group='/home/galaxy/data/database/files/001/dataset_1545.dat' - --READ_label='unique,0.07' + ## + ## NOTE: The "read" commands were eliminated with Mothur version 1.18 + ##
--- a/mothur/lib/galaxy/datatypes/metagenomics.py Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/lib/galaxy/datatypes/metagenomics.py Mon Jun 27 10:12:25 2011 -0500 @@ -22,7 +22,7 @@ ## Mothur Classes -class Otu( data.Text ): +class Otu( Tabular ): file_ext = 'otu' def sniff( self, filename ): @@ -70,6 +70,7 @@ """ Determines whether the file is a otu (operational taxonomic unit) format label<TAB>count[<TAB>value(1..n)] + """ try: fh = open( filename ) @@ -107,15 +108,32 @@ class Rabund( Sabund ): file_ext = 'rabund' - -class SharedRabund( Rabund ): - file_ext = 'shared' - - def sniff( self, filename ): +class GroupAbund( Otu ): + file_ext = 'grpabund' + def init_meta( self, dataset, copy_from=None ): + Otu.init_meta( self, dataset, copy_from=copy_from ) + def set_meta( self, dataset, overwrite = True, skip=1, max_data_lines = 100000, **kwd ): + # See if file starts with header line + if dataset.has_data(): + try: + fh = open( dataset.file_name ) + line = fh.readline() + line = line.strip() + linePieces = line.split('\t') + if linePieces[0] == 'label' and linePieces[1] == 'Group': + skip=1 + else: + skip=0 + finally: + fh.close() + Otu.set_meta( self, dataset, overwrite, skip, max_data_lines, **kwd) + def sniff( self, filename, vals_are_int=False): """ Determines whether the file is a otu (operational taxonomic unit) Shared format label<TAB>group<TAB>count[<TAB>value(1..n)] + The first line is column headings as of Mothur v 1.20 """ + log.info( "sniff GroupAbund vals_are_int %s" % vals_are_int) try: fh = open( filename ) count = 0 @@ -129,14 +147,18 @@ linePieces = line.split('\t') if len(linePieces) < 3: return False - try: - check = int(linePieces[2]) - if check + 3 != len(linePieces): + if count > 0 or linePieces[0] != 'label': + try: + check = int(linePieces[2]) + if check + 3 != len(linePieces): + return False + for i in range( 3, len(linePieces)): + if vals_are_int: + ival = int(linePieces[i]) + else: + fval = float(linePieces[i]) + except ValueError: return False - for i in range( 3, len(linePieces)): - ival = int(linePieces[i]) - except ValueError: - return False count += 1 if count >= 5: return True @@ -149,46 +171,35 @@ fh.close() return False -class RelAbund( Rabund ): +class SharedRabund( GroupAbund ): + file_ext = 'shared' + + + def sniff( self, filename ): + """ + Determines whether the file is a otu (operational taxonomic unit) Shared format + label<TAB>group<TAB>count[<TAB>value(1..n)] + The first line is column headings as of Mothur v 1.20 + """ + # return GroupAbund.sniff(self,filename,True) + isme = GroupAbund.sniff(self,filename,True) + log.info( "is SharedRabund %s" % isme) + return isme + + +class RelAbund( GroupAbund ): file_ext = 'relabund' def sniff( self, filename ): """ Determines whether the file is a otu (operational taxonomic unit) Relative Abundance format label<TAB>group<TAB>count[<TAB>value(1..n)] + The first line is column headings as of Mothur v 1.20 """ - try: - fh = open( filename ) - count = 0 - while True: - line = fh.readline() - line = line.strip() - if not line: - break #EOF - if line: - if line[0] != '@': - linePieces = line.split('\t') - if len(linePieces) < 3: - return False - try: - check = int(linePieces[2]) - if check + 3 != len(linePieces): - return False - for i in range( 3, len(linePieces)): - fval = float(linePieces[i]) - except ValueError: - return False - count += 1 - if count >= 5: - return True - fh.close() - if count < 5 and count > 0: - return True - except: - pass - finally: - fh.close() - return False + # return GroupAbund.sniff(self,filename,False) + isme = GroupAbund.sniff(self,filename,False) + log.info( "is RelAbund %s" % isme) + return isme class SecondaryStructureMap(Tabular): file_ext = 'map'
--- a/mothur/suite_config.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/suite_config.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,270 +1,279 @@ -<suite id="Mothur_toolsuite" name="Mothur Metagenomics" version="1.19.0"> +<suite id="Mothur_toolsuite" name="Mothur Metagenomics" version="1.20.0"> <description>Mothur metagenomics commands as Galaxy tools</description> - <tool id="mothur_align_check" name="Align.check" version="1.19.0"> - <description>Calculate the number of potentially misaligned bases</description> - </tool> - <tool id="mothur_align_seqs" name="Align.seqs" version="1.19.0"> - <description>Align sequences to a template alignment</description> - </tool> - <tool id="mothur_amova" name="Amova" version="1.19.0"> - <description>Analysis of molecular variance</description> - </tool> - <tool id="mothur_anosim" name="Anosim" version="1.19.0"> - <description>Non-parametric multivariate analysis of changes in community structure</description> - </tool> - <tool id="mothur_bin_seqs" name="Bin.seqs" version="1.19.0"> - <description>Order Sequences by OTU</description> - </tool> - <tool id="mothur_chimera_bellerophon" name="Chimera.bellerophon" version="1.19.0"> - <description>Find putative chimeras using bellerophon</description> - </tool> - <tool id="mothur_chimera_ccode" name="Chimera.ccode" version="1.19.0"> - <description>Find putative chimeras using ccode</description> - </tool> - <tool id="mothur_chimera_check" name="Chimera.check" version="1.19.0"> - <description>Find putative chimeras using chimeraCheck</description> - </tool> - <tool id="mothur_chimera_pintail" name="Chimera.pintail" version="1.19.0"> - <description>Find putative chimeras using pintail</description> - </tool> - <tool id="mothur_chimera_slayer" name="Chimera.slayer" version="1.19.0"> - <description>Find putative chimeras using slayer</description> - </tool> - <tool id="mothur_chop_seqs" name="Chop.seqs" version="1.19.0"> - <description>Trim sequences to a specified length</description> - </tool> - <tool id="mothur_classify_otu" name="Classify.otu" version="1.19.0"> - <description>Assign sequences to taxonomy</description> - </tool> - <tool id="mothur_classify_seqs" name="Classify.seqs" version="1.19.0"> - <description>Assign sequences to taxonomy</description> - </tool> - <tool id="mothur_clearcut" name="Clearcut" version="1.19.0"> - <description>Generate a tree using relaxed neighbor joining</description> - </tool> - <tool id="mothur_cluster_classic" name="Cluster.classic" version="1.19.0"> - <description>Assign sequences to OTUs (Dotur implementation)</description> - </tool> - <tool id="mothur_cluster_fragments" name="Cluster.fragments" version="1.19.0"> - <description> Group sequences that are part of a larger sequence</description> - </tool> - <tool id="mothur_cluster_split" name="Cluster.split" version="1.19.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit) splits large matrices</description> - </tool> - <tool id="mothur_cluster" name="Cluster" version="1.19.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> - </tool> - <tool id="mothur_collect_shared" name="Collect.shared" version="1.19.0"> - <description>Generate collector's curves for calculators on OTUs</description> - </tool> - <tool id="mothur_collect_single" name="Collect.single" version="1.19.0"> - <description>Generate collector's curves for OTUs</description> - </tool> - <tool id="mothur_consensus_seqs" name="Consensus.seqs" version="1.19.0"> - <description>Find a consensus sequence for each OTU or phylotype</description> - </tool> - <tool id="mothur_corr_axes" name="Corr.axes" version="1.19.0"> - <description>correlation of data to axes</description> - </tool> - <tool id="mothur_degap_seqs" name="Degap.seqs" version="1.19.0"> - <description>Remove gap characters from sequences</description> - </tool> - <tool id="mothur_deunique_seqs" name="Deunique.seqs" version="1.19.0"> - <description>Return all sequences</description> - </tool> - <tool id="mothur_dist_seqs" name="Dist.seqs" version="1.19.0"> - <description>calculate uncorrected pairwise distances between aligned sequences</description> - </tool> - <tool id="mothur_dist_shared" name="Dist.shared" version="1.19.0"> - <description>Generate a phylip-formatted dissimilarity distance matrix among multiple groups</description> - </tool> - <tool id="mothur_fastq_info" name="Fastq.info" version="1.19.0"> - <description>Convert fastq to fasta and quality</description> - </tool> - <tool id="mothur_filter_seqs" name="Filter.seqs" version="1.19.0"> - <description>removes columns from alignments</description> - </tool> - <tool id="mothur_get_groups" name="Get.groups" version="1.19.0"> - <description>Select groups</description> - </tool> - <tool id="mothur_get_group" name="Get.group" version="1.19.0"> - <description>group names from shared or from list and group</description> - </tool> - <tool id="mothur_get_lineage" name="Get.lineage" version="1.19.0"> - <description>Picks by taxon</description> - </tool> - <tool id="mothur_get_otulist" name="Get.otulist" version="1.19.0"> - <description>Get otus for each distance in a otu list</description> - </tool> - <tool id="mothur_get_oturep" name="Get.oturep" version="1.19.0"> - <description>Generate a fasta with a representative sequence for each OTU</description> - </tool> - <tool id="mothur_get_otus" name="Get.otus" version="1.19.0"> - <description>Get otus containing sequences from specified groups</description> - </tool> - <tool id="mothur_get_rabund" name="Get.rabund" version="1.19.0"> - <description>Get rabund from a otu list or sabund</description> - </tool> - <tool id="mothur_get_relabund" name="Get.relabund" version="1.19.0"> - <description>Calculate the relative abundance of each otu</description> - </tool> - <tool id="mothur_get_sabund" name="Get.sabund" version="1.19.0"> - <description>Get sabund from a otu list or rabund</description> - </tool> - <tool id="mothur_get_seqs" name="Get.seqs" version="1.19.0"> - <description>Picks sequences by name</description> - </tool> - <tool id="mothur_get_sharedseqs" name="Get.sharedseqs" version="1.19.0"> - <description>Get shared sequences at each distance from list and group</description> - </tool> - <tool id="mothur_hcluster" name="Hcluster" version="1.19.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> - </tool> - <tool id="mothur_heatmap_bin" name="Heatmap.bin" version="1.19.0"> - <description>Generate a heatmap for OTUs</description> - </tool> - <tool id="mothur_heatmap_sim" name="Heatmap.sim" version="1.19.0"> - <description>Generate a heatmap for pariwise similarity</description> - </tool> - <tool id="mothur_homova" name="Homova" version="1.19.0"> - <description>Homogeneity of molecular variance</description> - </tool> - <tool id="mothur_indicator" name="Indicator" version="1.19.0"> - <description>Identify indicator "species" for nodes on a tree</description> - </tool> - <tool id="mothur_libshuff" name="Libshuff" version="1.19.0"> - <description>Cramer-von Mises tests communities for the same structure</description> - </tool> - <tool id="mothur_list_seqs" name="List.seqs" version="1.19.0"> - <description>Lists the names (accnos) of the sequences</description> - </tool> - <tool id="mothur_make_design" name="Make Design" version="1.19.0" > - <description>Assign groups to Sets</description> - </tool> - <tool id="mothur_make_fastq" name="Make.fastq" version="1.19.0"> - <description>Convert fasta and quality to fastq</description> - </tool> - <tool id="mothur_make_files" name="Make.group" version="1.19.0"> - <description>Make a group file</description> - </tool> - <tool id="mothur_make_shared" name="Make.shared" version="1.19.0"> - <description>Make a shared file from a list and a group</description> - </tool> - <tool id="mothur_mantel" name="Mantel" version="1.19.0"> - <description>Mantel correlation coefficient between two matrices.</description> - </tool> - <tool id="mothur_merge_files" name="Merge.files" version="1.19.0"> - <description>Merge data</description> - </tool> - <tool id="mothur_merge_groups" name="Merge.groups" version="1.19.0" > - <description>Merge groups in a shared file</description> - </tool> - <tool id="mothur_metastats" name="Metastats" version="1.19.0" > - <description>generate principle components plot data</description> - </tool> - <tool id="mothur_nmds" name="Nmds" version="1.19.0"> - <description>generate non-metric multidimensional scaling data</description> - </tool> - <tool id="mothur_normalize_shared" name="Normalize.shared" version="1.19.0"> - <description>Normalize the number of sequences per group to a specified level</description> - </tool> - <tool id="mothur_otu_hierarchy" name="Otu.hierarchy" version="1.19.0"> - <description>Relate OTUs at different distances</description> - </tool> - <tool id="mothur_pairwise_seqs" name="Pairwise.seqs" version="1.19.0"> - <description>calculate uncorrected pairwise distances between sequences</description> - </tool> - <tool id="mothur_parse_list" name="Parse.list" version="1.19.0"> - <description>Generate a List file for each group</description> - </tool> - <tool id="mothur_parsimony" name="Parsimony" version="1.19.0"> - <description>Describes whether two or more communities have the same structure</description> - </tool> - <tool id="mothur_pca" name="Pca" version="1.19.0"> - <description>Principal Coordinate Analysis for a shared file</description> - </tool> - <tool id="mothur_pcoa" name="Pcoa" version="1.19.0" > - <description>Principal Coordinate Analysis for a distance matrix</description> - </tool> - <tool id="mothur_phylo_diversity" name="Phylo.diversity" version="1.19.0"> - <description>Alpha Diversity calculates unique branch length</description> - </tool> - <tool id="mothur_phylotype" name="Phylotype" version="1.19.0"> - <description>Assign sequences to OTUs based on taxonomy</description> - </tool> - <tool id="mothur_pre_cluster" name="Pre.cluster" version="1.19.0"> - <description>Remove sequences due to pyrosequencing errors</description> - </tool> - <tool id="mothur_rarefaction_shared" name="Rarefaction.shared" version="1.19.0"> - <description>Generate inter-sample rarefaction curves for OTUs</description> - </tool> - <tool id="mothur_rarefaction_single" name="Rarefaction.single" version="1.19.0"> - <description>Generate intra-sample rarefaction curves for OTUs</description> - </tool> - <tool id="mothur_remove_groups" name="Remove.groups" version="1.19.0"> - <description>Remove groups from groups,fasta,names,list,taxonomy</description> - </tool> - <tool id="mothur_remove_lineage" name="Remove.lineage" version="1.19.0"> - <description>Picks by taxon</description> - </tool> - <tool id="mothur_remove_otus" name="Remove.otus" version="1.19.0"> - <description>Remove otus containing sequences from specified groups</description> - </tool> - <tool id="mothur_remove_rare" name="Remove.rare" version="1.19.0"> - <description>Remove rare OTUs</description> - </tool> - <tool id="mothur_remove_seqs" name="Remove.seqs" version="1.19.0"> - <description>Remove sequences by name</description> - </tool> - <tool id="mothur_reverse_seqs" name="Reverse.seqs" version="1.19.0"> - <description>Reverse complement the sequences</description> - </tool> - <tool id="mothur_screen_seqs" name="Screen.seqs" version="1.19.0"> - <description>Screen sequences</description> - </tool> - <tool id="mothur_sens_spec" name="Sens.spec" version="1.19.0" > - <description>Determine the quality of OTU assignment</description> - </tool> - <tool id="mothur_sffinfo" name="Sffinfo" version="1.19.0"> - <description>Summarize the quality of sequences</description> - </tool> - <tool id="mothur_split_abund" name="Split.abund" version="1.19.0"> - <description>Separate sequences into rare and abundant groups</description> - </tool> - <tool id="mothur_split_groups" name="Split.groups" version="1.19.0"> - <description>Generates a fasta file for each group</description> - </tool> - <tool id="mothur_sub_sample" name="Sub.sample" version="1.19.0"> - <description>Create a sub sample</description> - </tool> - <tool id="mothur_summary_seqs" name="Summary.seqs" version="1.19.0"> - <description>Summarize the quality of sequences</description> - </tool> - <tool id="mothur_summary_shared" name="Summary.shared" version="1.19.0"> - <description>Summary of calculator values for OTUs</description> - </tool> - <tool id="mothur_summary_single" name="Summary.single" version="1.19.0"> - <description>Summary of calculator values for OTUs</description> - </tool> - <tool id="mothur_tree_shared" name="Tree.shared" version="1.19.0"> - <description>Generate a newick tree for dissimilarity among groups</description> - </tool> - <tool id="tree_vector" name="TreeVector" version="1.0"> - <description>Draw a Phylogenic Tree</description> - </tool> - <tool id="mothur_trim_seqs" name="Trim.seqs" version="1.19.0"> - <description>Trim sequences - primers, barcodes, quality</description> - </tool> - <tool id="mothur_unifrac_unweighted" name="unifrac.unweighted" version="1.19.0"> - <description>Describes whether two or more communities have the same structure</description> - </tool> - <tool id="mothur_unifrac_weighted" name="unifrac.weighted" version="1.19.0"> - <description>Describes whether two or more communities have the same structure</description> - </tool> - <tool id="mothur_unique_seqs" name="Unique.seqs" version="1.19.0"> - <description>Return unique sequences</description> - </tool> - <tool id="mothur_venn" name="Venn" version="1.19.0"> - <description>Generate Venn diagrams for groups </description> - </tool> + <tool id="mothur_align_check" name="Align.check" version="1.19.0"> + <description>Calculate the number of potentially misaligned bases</description> + </tool> + <tool id="mothur_align_seqs" name="Align.seqs" version="1.19.0"> + <description>Align sequences to a template alignment</description> + </tool> + <tool id="mothur_amova" name="Amova" version="1.19.0"> + <description>Analysis of molecular variance</description> + </tool> + <tool id="mothur_anosim" name="Anosim" version="1.19.0"> + <description>Non-parametric multivariate analysis of changes in community structure</description> + </tool> + <tool id="mothur_bin_seqs" name="Bin.seqs" version="1.20.0" force_history_refresh="True"> + <description>Order Sequences by OTU</description> + </tool> + <tool id="mothur_chimera_bellerophon" name="Chimera.bellerophon" version="1.20.0"> + <description>Find putative chimeras using bellerophon</description> + </tool> + <tool id="mothur_chimera_ccode" name="Chimera.ccode" version="1.20.0"> + <description>Find putative chimeras using ccode</description> + </tool> + <tool id="mothur_chimera_check" name="Chimera.check" version="1.20.0" force_history_refresh="True"> + <description>Find putative chimeras using chimeraCheck</description> + </tool> + <tool id="mothur_chimera_pintail" name="Chimera.pintail" version="1.20.0"> + <description>Find putative chimeras using pintail</description> + </tool> + <tool id="mothur_chimera_slayer" name="Chimera.slayer" version="1.20.0"> + <description>Find putative chimeras using slayer</description> + </tool> + <tool id="mothur_chimera_uchime" name="Chimera.uchime" version="1.20.0"> + <description>Find putative chimeras using uchime</description> + </tool> + <tool id="mothur_chop_seqs" name="Chop.seqs" version="1.19.0"> + <description>Trim sequences to a specified length</description> + </tool> + <tool id="mothur_classify_otu" name="Classify.otu" version="1.20.0" force_history_refresh="True"> + <description>Assign sequences to taxonomy</description> + </tool> + <tool id="mothur_classify_seqs" name="Classify.seqs" version="1.19.0"> + <description>Assign sequences to taxonomy</description> + </tool> + <tool id="mothur_clearcut" name="Clearcut" version="1.19.0"> + <description>Generate a tree using relaxed neighbor joining</description> + </tool> + <tool id="mothur_cluster_classic" name="Cluster.classic" version="1.19.0"> + <description>Assign sequences to OTUs (Dotur implementation)</description> + </tool> + <tool id="mothur_cluster_fragments" name="Cluster.fragments" version="1.20.0"> + <description> Group sequences that are part of a larger sequence</description> + </tool> + <tool id="mothur_cluster_split" name="Cluster.split" version="1.19.0"> + <description>Assign sequences to OTUs (Operational Taxonomic Unit) splits large matrices</description> + </tool> + <tool id="mothur_cluster" name="Cluster" version="1.19.0"> + <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> + </tool> + <tool id="mothur_collect_shared" name="Collect.shared" version="1.20.0" force_history_refresh="True"> + <description>Generate collector's curves for calculators on OTUs</description> + </tool> + <tool id="mothur_collect_single" name="Collect.single" version="1.20.0" force_history_refresh="True"> + <description>Generate collector's curves for OTUs</description> + </tool> + <tool id="mothur_consensus_seqs" name="Consensus.seqs" version="1.20.0" force_history_refresh="True"> + <description>Find a consensus sequence for each OTU or phylotype</description> + </tool> + <tool id="mothur_corr_axes" name="Corr.axes" version="1.20.0"> + <description>correlation of data to axes</description> + </tool> + <tool id="mothur_count_seqs" name="Count.seqs" version="1.20.0" > + <description>counts the number of sequences represented by the representative</description> + </tool> + <tool id="mothur_degap_seqs" name="Degap.seqs" version="1.20.0"> + <description>Remove gap characters from sequences</description> + </tool> + <tool id="mothur_deunique_seqs" name="Deunique.seqs" version="1.20.0"> + <description>Return all sequences</description> + </tool> + <tool id="mothur_deunique_tree" name="Deunique.tree" version="1.20.0"> + <description>Reinsert the redundant sequence identiers back into a unique tree.</description> + </tool> + <tool id="mothur_dist_seqs" name="Dist.seqs" version="1.19.0"> + <description>calculate uncorrected pairwise distances between aligned sequences</description> + </tool> + <tool id="mothur_dist_shared" name="Dist.shared" version="1.20.0" force_history_refresh="True"> + <description>Generate a phylip-formatted dissimilarity distance matrix among multiple groups</description> + </tool> + <tool id="mothur_fastq_info" name="Fastq.info" version="1.19.0"> + <description>Convert fastq to fasta and quality</description> + </tool> + <tool id="mothur_filter_seqs" name="Filter.seqs" version="1.19.0" force_history_refresh="True"> + <description>removes columns from alignments</description> + </tool> + <tool id="mothur_get_groups" name="Get.groups" version="1.20.0"> + <description>Select groups</description> + </tool> + <tool id="mothur_get_group" name="Get.group" version="1.19.0"> + <description>group names from shared or from list and group</description> + </tool> + <tool id="mothur_get_lineage" name="Get.lineage" version="1.20.0"> + <description>Picks by taxon</description> + </tool> + <tool id="mothur_get_otulist" name="Get.otulist" force_history_refresh="True" version="1.19.0"> + <description>Get otus for each distance in a otu list</description> + </tool> + <tool id="mothur_get_oturep" name="Get.oturep" version="1.20.0" force_history_refresh="True"> + <description>Generate a fasta with a representative sequence for each OTU</description> + </tool> + <tool id="mothur_get_otus" name="Get.otus" version="1.19.0"> + <description>Get otus containing sequences from specified groups</description> + </tool> + <tool id="mothur_get_rabund" name="Get.rabund" version="1.19.0"> + <description>Get rabund from a otu list or sabund</description> + </tool> + <tool id="mothur_get_relabund" name="Get.relabund" version="1.20.0"> + <description>Calculate the relative abundance of each otu</description> + </tool> + <tool id="mothur_get_sabund" name="Get.sabund" version="1.19.0"> + <description>Get sabund from a otu list or rabund</description> + </tool> + <tool id="mothur_get_seqs" name="Get.seqs" version="1.20.0"> + <description>Picks sequences by name</description> + </tool> + <tool id="mothur_get_sharedseqs" name="Get.sharedseqs" version="1.20.0" force_history_refresh="True"> + <description>Get shared sequences at each distance from list and group</description> + </tool> + <tool id="mothur_hcluster" name="Hcluster" version="1.19.0"> + <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> + </tool> + <tool id="mothur_heatmap_bin" name="Heatmap.bin" version="1.20.0" force_history_refresh="True"> + <description>Generate a heatmap for OTUs</description> + </tool> + <tool id="mothur_heatmap_sim" name="Heatmap.sim" version="1.20.0" force_history_refresh="True"> + <description>Generate a heatmap for pariwise similarity</description> + </tool> + <tool id="mothur_homova" name="Homova" version="1.19.0"> + <description>Homogeneity of molecular variance</description> + </tool> + <tool id="mothur_indicator" name="Indicator" version="1.20.0"> + <description>Identify indicator "species" for nodes on a tree</description> + </tool> + <tool id="mothur_libshuff" name="Libshuff" version="1.19.0"> + <description>Cramer-von Mises tests communities for the same structure</description> + </tool> + <tool id="mothur_list_seqs" name="List.seqs" version="1.19.0"> + <description>Lists the names (accnos) of the sequences</description> + </tool> + <tool id="mothur_make_design" name="Make Design" version="1.19.0" > + <description>Assign groups to Sets</description> + </tool> + <tool id="mothur_make_fastq" name="Make.fastq" version="1.19.0"> + <description>Convert fasta and quality to fastq</description> + </tool> + <tool id="mothur_make_files" name="Make.group" version="1.19.0"> + <description>Make a group file</description> + </tool> + <tool id="mothur_make_shared" name="Make.shared" version="1.19.0" force_history_refresh="True"> + <description>Make a shared file from a list and a group</description> + </tool> + <tool id="mothur_mantel" name="Mantel" version="1.19.0"> + <description>Mantel correlation coefficient between two matrices.</description> + </tool> + <tool id="mothur_merge_files" name="Merge.files" version="1.19.0"> + <description>Merge data</description> + </tool> + <tool id="mothur_merge_groups" name="Merge.groups" version="1.20.0" > + <description>Merge groups in a shared file</description> + </tool> + <tool id="mothur_metastats" name="Metastats" version="1.20.0" force_history_refresh="True" > + <description>generate principle components plot data</description> + </tool> + <tool id="mothur_nmds" name="Nmds" version="1.19.0"> + <description>generate non-metric multidimensional scaling data</description> + </tool> + <tool id="mothur_normalize_shared" name="Normalize.shared" version="1.20.0"> + <description>Normalize the number of sequences per group to a specified level</description> + </tool> + <tool id="mothur_otu_hierarchy" name="Otu.hierarchy" version="1.19.0"> + <description>Relate OTUs at different distances</description> + </tool> + <tool id="mothur_pairwise_seqs" name="Pairwise.seqs" version="1.19.0"> + <description>calculate uncorrected pairwise distances between sequences</description> + </tool> + <tool id="mothur_parse_list" name="Parse.list" version="1.19.0" force_history_refresh="True"> + <description>Generate a List file for each group</description> + </tool> + <tool id="mothur_parsimony" name="Parsimony" version="1.19.0"> + <description>Describes whether two or more communities have the same structure</description> + </tool> + <tool id="mothur_pca" name="Pca" version="1.20.0"> + <description>Principal Coordinate Analysis for a shared file</description> + </tool> + <tool id="mothur_pcoa" name="Pcoa" version="1.19.0" > + <description>Principal Coordinate Analysis for a distance matrix</description> + </tool> + <tool id="mothur_phylo_diversity" name="Phylo.diversity" version="1.20.0"> + <description>Alpha Diversity calculates unique branch length</description> + </tool> + <tool id="mothur_phylotype" name="Phylotype" version="1.19.0"> + <description>Assign sequences to OTUs based on taxonomy</description> + </tool> + <tool id="mothur_pre_cluster" name="Pre.cluster" version="1.20.0"> + <description>Remove sequences due to pyrosequencing errors</description> + </tool> + <tool id="mothur_rarefaction_shared" name="Rarefaction.shared" version="1.20.0"> + <description>Generate inter-sample rarefaction curves for OTUs</description> + </tool> + <tool id="mothur_rarefaction_single" name="Rarefaction.single" version="1.20.0" force_history_refresh="True"> + <description>Generate intra-sample rarefaction curves for OTUs</description> + </tool> + <tool id="mothur_remove_groups" name="Remove.groups" version="1.19.0"> + <description>Remove groups from groups,fasta,names,list,taxonomy</description> + </tool> + <tool id="mothur_remove_lineage" name="Remove.lineage" version="1.20.0"> + <description>Picks by taxon</description> + </tool> + <tool id="mothur_remove_otus" name="Remove.otus" version="1.19.0"> + <description>Remove otus containing sequences from specified groups</description> + </tool> + <tool id="mothur_remove_rare" name="Remove.rare" version="1.20.0"> + <description>Remove rare OTUs</description> + </tool> + <tool id="mothur_remove_seqs" name="Remove.seqs" version="1.20.0"> + <description>Remove sequences by name</description> + </tool> + <tool id="mothur_reverse_seqs" name="Reverse.seqs" version="1.19.0"> + <description>Reverse complement the sequences</description> + </tool> + <tool id="mothur_screen_seqs" name="Screen.seqs" version="1.20.0"> + <description>Screen sequences</description> + </tool> + <tool id="mothur_sens_spec" name="Sens.spec" version="1.19.0" > + <description>Determine the quality of OTU assignment</description> + </tool> + <tool id="mothur_sffinfo" name="Sffinfo" version="1.19.0"> + <description>Summarize the quality of sequences</description> + </tool> + <tool id="mothur_split_abund" name="Split.abund" version="1.20.0" force_history_refresh="True"> + <description>Separate sequences into rare and abundant groups</description> + </tool> + <tool id="mothur_split_groups" name="Split.groups" version="1.20.0" force_history_refresh="True"> + <description>Generates a fasta file for each group</description> + </tool> + <tool id="mothur_sub_sample" name="Sub.sample" version="1.20.0"> + <description>Create a sub sample</description> + </tool> + <tool id="mothur_summary_seqs" name="Summary.seqs" version="1.19.0"> + <description>Summarize the quality of sequences</description> + </tool> + <tool id="mothur_summary_shared" name="Summary.shared" version="1.20.0" force_history_refresh="True"> + <description>Summary of calculator values for OTUs</description> + </tool> + <tool id="mothur_summary_single" name="Summary.single" version="1.19.0" force_history_refresh="True"> + <description>Summary of calculator values for OTUs</description> + </tool> + <tool id="mothur_tree_shared" name="Tree.shared" version="1.20.0" force_history_refresh="True"> + <description>Generate a newick tree for dissimilarity among groups</description> + </tool> + <tool id="tree_vector" name="TreeVector" version="1.0"> + <description>Draw a Phylogenic Tree</description> + </tool> + <tool id="mothur_trim_seqs" name="Trim.seqs" version="1.20.0" force_history_refresh="True"> + <description>Trim sequences - primers, barcodes, quality</description> + </tool> + <tool id="mothur_unifrac_unweighted" name="unifrac.unweighted" version="1.19.0"> + <description>Describes whether two or more communities have the same structure</description> + </tool> + <tool id="mothur_unifrac_weighted" name="unifrac.weighted" version="1.19.0"> + <description>Describes whether two or more communities have the same structure</description> + </tool> + <tool id="mothur_unique_seqs" name="Unique.seqs" version="1.20.0"> + <description>Return unique sequences</description> + </tool> + <tool id="mothur_venn" name="Venn" version="1.20.0" force_history_refresh="True"> + <description>Generate Venn diagrams for groups </description> + </tool> </suite>
--- a/mothur/tools/mothur/bin.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/bin.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_bin_seqs" name="Bin.seqs" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_bin_seqs" name="Bin.seqs" version="1.20.0" force_history_refresh="True"> <description>Order Sequences by OTU</description> <command interpreter="python"> mothur_wrapper.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/chimera.uchime.xml Mon Jun 27 10:12:25 2011 -0500 @@ -0,0 +1,167 @@ +<tool id="mothur_chimera_uchime" name="Chimera.uchime" version="1.20.0"> + <description>Find putative chimeras using uchime</description> + <command interpreter="python"> + mothur_wrapper.py + --cmd='chimera.uchime' + ## stool.trim.unique.good.fasta + ## stool.trim.unique.good.uchime.chimera + ## stool.trim.unique.good.uchime.accnos + ## stool.trim.unique.good.uchime.alns + #if $chimealns: + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.uchime\.chimeras?$:'$out_file,'^\S+\.uchime\.accnos$:'$out_accnos,'^\S+\.uchime\.alns$:'$out_alns + #else: + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.uchime\.chimeras?$:'$out_file,'^\S+\.uchime\.accnos$:'$out_accnos + #end if + --outputdir='$logfile.extra_files_path' + --fasta=$fasta + #if $template.source == 'ref': + --reference=$template.reference + #elif $template.source == 'hist': + --reference=$template.reference + #elif $template.source == 'self': + --reference='self' + #if float($template.abskew.__str__) > 0: + --abskew=$template.abskew + #end if + #elif $template.source == 'names': + --name=$template.name + #end if + #if float($minh.__str__) > 0: + --minh=$minh + #end if + #if float($mindiv.__str__) > 0: + --mindiv=$mindiv + #end if + #if float($xn.__str__) > 0: + --xn=$xn + #end if + #if float($dn.__str__) > 0: + --dn=$dn + #end if + #if float($xa.__str__) > 0: + --xa=$xa + #end if + #if int($chunks.__str__) > 0: + --chunks=$chunks + #end if + #if int($minchunk.__str__) > 0: + --minchunk=$minchunk + #end if + #if len($idsmoothwindow.__str__) > 0 and int($idsmoothwindow.__str__) > 0: + --idsmoothwindow=$idsmoothwindow + #end if + ## #if len($minsmoothid.__str__) > 0 and float($minsmoothid.__str__) > 0: + ## --minsmoothid=$minsmoothid + ## #end if + #if int($maxp.__str__) > 0: + --maxp=$maxp + #end if + #if int($minlen.__str__) > 0: + --minlen=$minlen + #end if + #if int($maxlen.__str__) > 0: + --maxlen=$maxlen + #end if + $skipgaps + $skipgaps2 + #if $alignment.ucl: + --ucl=true + #if $alignment.queryfract != None and len($alignment.queryfract) > 0 and 1.0 >= float($alignment.queryfract) > 0: + --queryfract=$alignment.queryfract + #end if + #end if + $chimealns + --processors=2 + </command> + <inputs> + <param name="fasta" type="data" format="align" label="fasta - Candiate Aligned Sequences"/> + <conditional name="template"> + <param name="source" type="select" label="Select Reference Template from" help=""> + <option value="hist">History</option> + <option value="ref">Cached Reference</option> + <option value="self">Self</option> + <option value="names">Use a names file</option> + </param> + <when value="ref"> + <param name="reference" type="select" label="reference - Select an alignment database " help=""> + <options from_file="mothur_aligndb.loc"> + <column name="name" index="0" /> + <column name="value" index="1" /> + </options> + </param> + </when> + <when value="hist"> + <param name="reference" type="data" format="fasta" label="reference - Reference to align with" help=""/> + </when> + <when value="self"> + <param name="abskew" type="float" value="1.9" label="abskew - Abundance skew (default 1.9)" help="Abundance skew is: min [ abund(parent1), abund(parent2) ] / abund(query)"/> + </when> + <when value="names"> + <param name="name" type="data" format="names" label="name - Sequence names"/> + </when> + </conditional> + + <param name="minh" type="float" value="0.3" label="minh - mininum score to report chimera. Default 0.3" help="Values from 0.1 to 5 might be reasonable. Lower values increase sensitivity but may report more false positives."/> + <param name="mindiv" type="float" value="0.5" label="mindiv - minimum divergence ratio, default 0.5" help="to ignore very close chimeras, increase mindiv to 1.0 or 2.0, to increase sensitivity decrease minh to 0.1"/> + + <param name="xn" type="float" value="8.0" label="xn - weight of a no vote. Default 8.0" help="Decreasing this weight to around 3 or 4 may give better performance on denoised data"/> + <param name="dn" type="float" value="1.4" label="dn - pseudo-count prior on number of no votes. Default 1.4" help="Reasonable values are probably in the range from 0.2 to 2.0"/> + <param name="xa" type="float" value="1.0" label="xa - eight of an abstain vote. Default 1.0" help="Reasonable values might range from 0.1 to 2.0"/> + + + <param name="chunks" type="integer" value="4" label="chunks - number of chunks. Default 4." help="number of chunks to extract from the query sequence when searching for parents."/> + <param name="minchunk" type="integer" value="64" label="minchunk - minimum length of a chunk. Default 64." help=""/> + <param name="idsmoothwindow" type="integer" value="32" optional="True" label="idsmoothwindow - the length of id smoothing window. Default 32" help=""/> + <!-- not supported in uchime + <param name="minsmoothid" type="float" value="0.95" optional="True" label="minsmoothid - minimum factional identity over smoothed window of candidate parent. Default 0.95" help=""/> + --> + <param name="maxp" type="integer" value="2" label="maxp - maximum number of candidate parents to consider. Default 2" help="increasing maxp gives only a very small improvement in sensivity but tends to increase the error rate quite a bit"/> + <param name="minlen" type="integer" value="0" label="minlen - minimum unaligned sequence length. Default 10" help="Applies to both query and reference sequences."/> + <param name="maxlen" type="integer" value="0" label="maxlen - maximum unaligned sequence length. Defaults 10000" help="Applies to both query and reference sequences."/> + + <param name="skipgaps" type="boolean" falsevalue="--skipgaps=false" truevalue="" checked="false" label="skipgaps - columns containing gaps do not count as diffs. Default=T" help="controls how gapped columns affect counting of diffs"/> + <param name="skipgaps2" type="boolean" falsevalue="--skipgaps2=false" truevalue="" checked="false" label="skipgaps2 - column is immediately adjacent to a column containing a gap, it is not counted as a diff. Default=T" help="controls how gapped columns affect counting of diffs"/> + + <param name="chimealns" type="boolean" falsevalue="" truevalue="--chimealns=true" checked="false" label="chimealns - Produce a file containing multiple alignments of query sequences to parents in human readable format. " help="Alignments show columns with differences that support or contradict a chimeric model."/> + + + <conditional name="alignment"> + <param name="ucl" type="boolean" falsevalue="global" truevalue="local" checked="false" label="ucl - Use local-X alignments." help="global-X is the default"/> + <when value="global"/> + <when value="local"> + <param name="queryfract" type="float" value="0.5" label="queryfract - minimum fraction of the query sequence that must be covered by a local-X alignment. Default 0.5." help=""/> + </when> + </conditional> + + </inputs> + <outputs> + <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" /> + <data format="txt" name="out_file" label="${tool.name} on ${on_string}: uchime.chimeras" /> + <data format="accnos" name="out_accnos" label="${tool.name} on ${on_string}: uchime.accnos" /> + <data format="txt" name="out_alns" label="${tool.name} on ${on_string}: uchime.alns" > + <filter>chimealns == True</filter> + </data> + </outputs> + <requirements> + <requirement type="binary">mothur</requirement> + </requirements> + <tests> + </tests> + <help> +**Mothur Overview** + +Mothur_, initiated by Dr. Patrick Schloss and his software development team +in the Department of Microbiology and Immunology at The University of Michigan, +provides bioinformatics for the microbial ecology community. + +.. _Mothur: http://www.mothur.org/wiki/Main_Page + +**Command Documenation** + +The chimera.uchime_ command reads a fasta file and reference file and outputs potentially chimeric sequences. The original uchime program was written by Robert C. Edgar and donated to the public domain, http://drive5.com/uchime + +.. _chimera.uchime: http://www.mothur.org/wiki/Chimera.uchime + + + </help> +</tool>
--- a/mothur/tools/mothur/classify.otu.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/classify.otu.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_classify_otu" name="Classify.otu" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_classify_otu" name="Classify.otu" version="1.20.0" force_history_refresh="True"> <description>Assign sequences to taxonomy</description> <command interpreter="python"> mothur_wrapper.py @@ -25,7 +25,7 @@ $probs </command> <inputs> - <param name="otu" type="data" format="list" label="read.otu(list=) - OTU List "/> + <param name="otu" type="data" format="list" label="list - OTU List "/> <conditional name="tax"> <param name="source" type="select" label="Select Taxonomy from" help=""> <option value="hist">History</option> @@ -44,8 +44,8 @@ </when> </conditional> <conditional name="reftax"> - <param name="source" type="select" label="Select Taxonomy from" help=""> - <option value="none">None</option> + <param name="source" type="select" label="Select Reference Taxonomy used in Classify.seqs from" help="Including the reference taxonomy file used when you classified your sequences keep the rankIDs in the summary file static."> + <option value="none">Selection is Optional</option> <option value="hist">History</option> <option value="ref">Cached Reference</option> </param>
--- a/mothur/tools/mothur/cluster.fragments.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/cluster.fragments.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_cluster_fragments" name="Cluster.fragments" version="1.19.0"> +<tool id="mothur_cluster_fragments" name="Cluster.fragments" version="1.20.0"> <description> Group sequences that are part of a larger sequence</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/collect.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/collect.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_collect_shared" name="Collect.shared" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_collect_shared" name="Collect.shared" version="1.20.0" force_history_refresh="True"> <description>Generate collector's curves for calculators on OTUs</description> <command interpreter="python"> mothur_wrapper.py @@ -29,6 +29,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -37,6 +38,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/collect.single.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/collect.single.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,12 +1,14 @@ -<tool id="mothur_collect_single" name="Collect.single" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_collect_single" name="Collect.single" version="1.20.0" force_history_refresh="True"> <description>Generate collector's curves for OTUs</description> <command interpreter="python"> mothur_wrapper.py --cmd='collect.single' --result='^mothur.\S+\.logfile$:'$logfile --outputdir='$logfile.extra_files_path' - --datasetid='$logfile.id' --new_file_path='$__new_file_path__' - --new_datasets='^\S+?\.(\S+)$:tabular' + #if $as_datasets.__str__ == 'yes': + --datasetid='$logfile.id' --new_file_path='$__new_file_path__' + --new_datasets='^\S+?\.(\S+)$:tabular' + #end if #if isinstance($otu.datatype, $__app__.datatypes_registry.get_datatype_by_extension('shared').__class__): --shared=$otu #elif isinstance($otu.datatype, $__app__.datatypes_registry.get_datatype_by_extension('rabund').__class__): @@ -54,6 +56,7 @@ help="By default these calculators will base the prediction on a sample that is the same size as the initial sampling"/> <param name="freq" type="float" value="0.0" label="freq - frequency for output (default is every 100 sequences)" help="Use a decimal between 0 and 1 to set the frequency as a percentage of the number of sequences"/> + <param name="as_datasets" type="boolean" truevalue="yes" falsevalue="no" checked="true" label="Create a new history dataset for each label and calculator"/> </inputs> <outputs> <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" />
--- a/mothur/tools/mothur/consensus.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/consensus.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_consensus_seqs" name="Consensus.seqs" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_consensus_seqs" name="Consensus.seqs" version="1.20.0" force_history_refresh="True"> <description>Find a consensus sequence for each OTU or phylotype</description> <command interpreter="python"> mothur_wrapper.py @@ -8,6 +8,9 @@ #if $name.__str__ != "None" and len($name.__str__) > 0: --name=$name #end if + #if $cutoff != None and len($cutoff.__str__) > 0 and 100 > int($cutoff.__str__) > 0: + --cutoff=$cutoff + #end if #if $otu.use == 'yes': --list=$otu.list #if $otu.label.__str__ != "None" and len($otu.label.__str__) > 0: @@ -39,6 +42,10 @@ </param> </when> </conditional> <!-- --> + <param name="cutoff" type="integer" value="100" optional="True" label="cutoff - set a percentage of sequences that support the base"> + <help>For example: cutoff=95 would return the base that was supported by at least 95% of sequences.</help> + <validator type="in_range" message="The percentage cutoff must be between 1 and 100" min="1" max="100"/> + </param> </inputs> <outputs> <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" />
--- a/mothur/tools/mothur/corr.axes.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/corr.axes.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_corr_axes" name="Corr.axes" version="1.19.0"> +<tool id="mothur_corr_axes" name="Corr.axes" version="1.20.0"> <description>correlation of data to axes</description> <command interpreter="python"> mothur_wrapper.py @@ -41,6 +41,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -48,6 +49,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/count.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -0,0 +1,63 @@ +<tool id="mothur_count_seqs" name="Count.seqs" version="1.20.0" > + <description>counts the number of sequences represented by the representative</description> + <command interpreter="python"> + mothur_wrapper.py + --cmd='count.seqs' + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.seq.count$:'$seq_count + --outputdir='$logfile.extra_files_path' + --name=$name + #if $grouping.use: + #if $grouping.group.__str__ != "None" and len($grouping.group.__str__) > 0: + --group='$grouping.group' + #end if + #if $grouping.groups.__str__ != "None" and len($grouping.groups.__str__) > 0: + --groups='$grouping.groups' + #end if + #end if + </command> + <inputs> + <param name="name" type="data" format="names" label="name - Sequences Name reference"/> + <conditional name="grouping"> + <param name="use" type="boolean" truevalue="yes" falsevalue="no" checked="False" label="Use a Group file to include counts for groups"/> + <when value="yes"> + <param name="group" type="data" format="groups" label="group - Group file for the tree"/> + <param name="groups" type="select" label="groups - Groups to display" multiple="true"> + <help>All groups displayed if none are selected.</help> + <options from_dataset="group"> + <column name="name" index="1"/> + <column name="value" index="1"/> + <filter type="unique_value" name="unq_grp" column="1" /> + </options> + </param> + </when> + <when value="no"/> + </conditional> <!-- use_groups --> + </inputs> + <outputs> + <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" /> + <data format="tabular" name="seq_count" label="${tool.name} on ${on_string}: seq.count" /> + </outputs> + <requirements> + <requirement type="binary">mothur</requirement> + </requirements> + <tests> + </tests> + <help> +**Mothur Overview** + +Mothur_, initiated by Dr. Patrick Schloss and his software development team +in the Department of Microbiology and Immunology at The University of Michigan, +provides bioinformatics for the microbial ecology community. + +.. _Mothur: http://www.mothur.org/wiki/Main_Page + +**Command Documenation** + +The count.seqs_ command counts the number of sequences represented by the representative sequence in a name_ file. If a group_ file is given, it will also provide the group count breakdown. + +.. _name: http://www.mothur.org/wiki/Name_file +.. _group: http://www.mothur.org/wiki/Group_file +.. _count.seqs: http://www.mothur.org/wiki/Count.seqs + + </help> +</tool>
--- a/mothur/tools/mothur/degap.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/degap.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_degap_seqs" name="Degap.seqs" version="1.19.0"> +<tool id="mothur_degap_seqs" name="Degap.seqs" version="1.20.0"> <description>Remove gap characters from sequences</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/deunique.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/deunique.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_deunique_seqs" name="Deunique.seqs" version="1.19.0"> +<tool id="mothur_deunique_seqs" name="Deunique.seqs" version="1.20.0"> <description>Return all sequences</description> <command interpreter="python"> mothur_wrapper.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/deunique.tree.xml Mon Jun 27 10:12:25 2011 -0500 @@ -0,0 +1,42 @@ +<tool id="mothur_deunique_tree" name="Deunique.tree" version="1.20.0"> + <description>Reinsert the redundant sequence identiers back into a unique tree.</description> + <command interpreter="python"> + mothur_wrapper.py + --cmd='deunique.tree' + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.deunique\.tre$:'$out_tree + --outputdir='$logfile.extra_files_path' + --tree=$tree + --name=$names + </command> + <inputs> + <param name="tree" type="data" format="tre" label="tree - Sequences to filter"/> + <param name="names" type="data" format="names" label="names - Sequences Name reference"/> + </inputs> + <outputs> + <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" /> + <data format_source="tree" name="out_tree" label="${tool.name} on ${on_string}: deunique.tre" /> + </outputs> + <requirements> + <requirement type="binary">mothur</requirement> + </requirements> + <tests> + </tests> + <help> +**Mothur Overview** + +Mothur_, initiated by Dr. Patrick Schloss and his software development team +in the Department of Microbiology and Immunology at The University of Michigan, +provides bioinformatics for the microbial ecology community. + +.. _Mothur: http://www.mothur.org/wiki/Main_Page + +**Command Documenation** + +The deunique.tree_ command is the reinserts the redundant sequence identiers back into a unique tree using a name_ file. + +.. _name: http://www.mothur.org/wiki/Name_file +.. _deunique.tree: http://www.mothur.org/wiki/Deunique.tree + + + </help> +</tool>
--- a/mothur/tools/mothur/dist.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/dist.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_dist_shared" name="Dist.shared" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_dist_shared" name="Dist.shared" version="1.20.0" force_history_refresh="True"> <description>Generate a phylip-formatted dissimilarity distance matrix among multiple groups</description> <command interpreter="python"> mothur_wrapper.py @@ -30,6 +30,7 @@ #if $output.__str__ != "None" and len($output.__str__) > 0: --output=$output #end if + --processors=2 </command> <inputs> <!-- list,group or shared --> @@ -38,6 +39,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -45,6 +47,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/get.groups.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.groups.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_groups" name="Get.groups" version="1.19.0"> +<tool id="mothur_get_groups" name="Get.groups" version="1.20.0"> <description>Select groups</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/get.lineage.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.lineage.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_lineage" name="Get.lineage" version="1.19.0"> +<tool id="mothur_get_lineage" name="Get.lineage" version="1.20.0"> <description>Picks by taxon</description> <command interpreter="python"> mothur_wrapper.py @@ -9,7 +9,7 @@ --cmd='get.lineage' --outputdir='$logfile.extra_files_path' --taxonomy=$taxonomy - --taxon="'$re.sub('\(\d+\)','',$taxon.value.__str__)'" + --taxon="'$re.sub('(\s|,)+',',',$re.sub('\(\d+\)','',$taxon.value.__str__))'" #if $fasta_in.__str__ != "None" and len($fasta_in.__str__) > 0: --fasta=$fasta_in #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.pick.\2',$os.path.basename($fasta_in.__str__)) + ":'" + $fasta_out.__str__] @@ -35,14 +35,17 @@ </command> <inputs> <param name="taxonomy" type="data" format="seq.taxonomy" label="taxonomy - Taxonomy"/> - <param name="taxons" type="select" size="120" label="Browse Taxons from Taxonomy"> + <!-- + <param name="taxons" type="select" size="120" multiple="true" label="Browse Taxons from Taxonomy"> <options from_dataset="taxonomy"> <column name="name" index="1"/> <column name="value" index="1"/> <filter type="unique_value" name="unique_taxon" column="1" /> + <filter type="sort_by" name="sorted_taxon" column="1" /> </options> </param> - <param name="taxon" type="text" size="120" label="taxon - Select Taxon for filtering"/> + --> + <param name="taxon" type="text" area="True" size="5x120" label="taxon - Select Taxons for filtering" help="Enter 1 or more taxons separated by whitespace or commas"/> <param name="fasta_in" type="data" format="fasta" optional="true" label="fasta - Fasta Sequences"/> <param name="group_in" type="data" format="groups" optional="true" label="group - Groups"/> <param name="alignreport_in" type="data" format="align.report" optional="true" label="alignreport - Align Report"/>
--- a/mothur/tools/mothur/get.oturep.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.oturep.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_oturep" name="Get.oturep" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_get_oturep" name="Get.oturep" version="1.20.0" force_history_refresh="True"> <description>Generate a fasta with a representative sequence for each OTU</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/get.relabund.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.relabund.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_relabund" name="Get.relabund" version="1.19.0"> +<tool id="mothur_get_relabund" name="Get.relabund" version="1.20.0"> <description>Calculate the relative abundance of each otu</description> <command interpreter="python"> mothur_wrapper.py @@ -23,6 +23,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -30,6 +31,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/get.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_seqs" name="Get.seqs" version="1.19.0"> +<tool id="mothur_get_seqs" name="Get.seqs" version="1.20.0"> <description>Picks sequences by name</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/get.sharedseqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/get.sharedseqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_get_sharedseqs" name="Get.sharedseqs" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_get_sharedseqs" name="Get.sharedseqs" version="1.20.0" force_history_refresh="True"> <description>Get shared sequences at each distance from list and group</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/heatmap.bin.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/heatmap.bin.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_heatmap_bin" name="Heatmap.bin" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_heatmap_bin" name="Heatmap.bin" version="1.20.0" force_history_refresh="True"> <description>Generate a heatmap for OTUs</description> <command interpreter="python"> mothur_wrapper.py @@ -52,6 +52,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param> @@ -59,6 +60,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -75,7 +77,7 @@ </when> <when value="yes"> <param name="otu" type="data" format="list,rabund,sabund" label="list,rabund,sabund - OTU List"/> - <param name="otu_group" type="data" format="groups" label="read.otu(group) - Group file for the OTU List"/> + <param name="otu_group" type="data" format="groups" label="group - Group file for the OTU List"/> <param name="groups" type="select" label="groups - Groups to include" multiple="true"> <options from_dataset="otu_group"> <column name="name" index="1"/>
--- a/mothur/tools/mothur/heatmap.sim.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/heatmap.sim.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_heatmap_sim" name="Heatmap.sim" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_heatmap_sim" name="Heatmap.sim" version="1.20.0" force_history_refresh="True"> <description>Generate a heatmap for pariwise similarity</description> <command interpreter="python"> mothur_wrapper.py @@ -41,11 +41,12 @@ <option value="column">colomn - Pairwise Column Distance Matrix</option> </param> <when value="shared"> - <param name="otu" type="data" format="shared" label="read.otu(shared=) - OTU Shared"/> + <param name="otu" type="data" format="shared" label="shared - OTU Shared"/> <param name="label" type="select" label="label - OTU Labels" multiple="true"> <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -53,6 +54,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/indicator.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/indicator.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_indicator" name="Indicator" version="1.19.0"> +<tool id="mothur_indicator" name="Indicator" version="1.20.0"> <description>Identify indicator "species" for nodes on a tree</description> <command interpreter="python"> mothur_wrapper.py @@ -30,6 +30,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -37,6 +38,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/merge.groups.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/merge.groups.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_merge_groups" name="Merge.groups" version="1.19.0" > +<tool id="mothur_merge_groups" name="Merge.groups" version="1.20.0" > <description>Merge groups in a shared file</description> <command interpreter="python"> mothur_wrapper.py @@ -25,6 +25,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param> @@ -32,6 +33,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -51,6 +53,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/metastats.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/metastats.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_metastats" name="Metastats" version="1.19.0" force_history_refresh="True" > +<tool id="mothur_metastats" name="Metastats" version="1.20.0" force_history_refresh="True" > <description>generate principle components plot data</description> <command interpreter="python"> mothur_wrapper.py @@ -34,6 +34,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -41,6 +42,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/mothur_wrapper.py Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/mothur_wrapper.py Mon Jun 27 10:12:25 2011 -0500 @@ -4,7 +4,7 @@ http://www.mothur.org/ Supports mothur version -mothur v.1.17.0 +mothur v.1.20.0 Class encapsulating Mothur galaxy tool. Expect each invocation to include: @@ -28,7 +28,7 @@ # Each item conatins: a regex pattern for matching filenames and a galaxy datatype (separated by :) # The regex match.groups()[0] is used as the id name of the dataset, and must result in unique name for each output --new_datasets='^\S+?\.((\S+)\.(unique|[0-9.]*)\.dist)$:lower.dist' - # Many mothur commands first require data to be read into memory using: read.otu, read.dist, or read.tree + ## Before version 1.18.0 Many mothur commands first required data to be read into memory using: read.otu, read.dist, or read.tree # This prequisite command and its params are prefixed with 'READ_' --READ_cmd='read.otu' --READ_list=/home/galaxy/data/database/files/001/dataset_1557.dat @@ -176,116 +176,79 @@ """ cmd_dict = dict() cmd_dict['align.check'] = dict({'required' : ['fasta','map']}) - #cmd_dict['align.seqs'] = dict({'required' : ['candidate','template'], 'optional' : ['search','ksize','align','match','mismatch','gapopen','gapextend','flip','threshold','processors']}) cmd_dict['align.seqs'] = dict({'required' : ['fasta','reference',], 'optional' : ['search','ksize','align','match','mismatch','gapopen','gapextend','flip','threshold','processors']}) cmd_dict['amova'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) cmd_dict['anosim'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) - #cmd_dict['bin.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name','label','group']}) cmd_dict['bin.seqs'] = dict({'required' : ['list','fasta'], 'optional' : ['name','label','group']}) - #cmd_dict['bootstrap.shared'] = dict({'required' : [], 'optional' : ['calc','groups','iters','label']}) cmd_dict['bootstrap.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','groups','iters','label']}) #catchall cmd_dict['chimera.bellerophon'] = dict({'required' : ['fasta'], 'optional' : ['filter','correction','window','increment','processors']}) - #cmd_dict['chimera.ccode'] = dict({'required' : ['fasta','template'], 'optional' : ['filter','mask','window','numwanted','processors']}) cmd_dict['chimera.ccode'] = dict({'required' : ['fasta','reference'], 'optional' : ['filter','mask','window','numwanted','processors']}) - #cmd_dict['chimera.check'] = dict({'required' : ['fasta','template'], 'optional' : ['ksize','svg','name','increment','processors']}) cmd_dict['chimera.check'] = dict({'required' : ['fasta','reference'], 'optional' : ['ksize','svg','name','increment','processors']}) - #cmd_dict['chimera.pintail'] = dict({'required' : ['fasta','template'], 'optional' : ['conservation','quantile','filter','mask','window','increment','processors']}) cmd_dict['chimera.pintail'] = dict({'required' : ['fasta','reference'], 'optional' : ['conservation','quantile','filter','mask','window','increment','processors']}) - #cmd_dict['chimera.slayer'] = dict({'required' : ['fasta','template'], 'optional' : ['name','search','window','increment','match','mismatch','numwanted','parents','minsim','mincov','iters','minbs','minsnp','divergence','realign','split','processors']}) cmd_dict['chimera.slayer'] = dict({'required' : ['fasta','reference'], 'optional' : ['name','search','window','increment','match','mismatch','numwanted','parents','minsim','mincov','iters','minbs','minsnp','divergence','realign','split','processors']}) - #cmd_dict['chop.seqs'] = dict({'required' : ['fasta','numbases'], 'optional' : ['keep','short']}) + cmd_dict['chimera.uchime'] = dict({'required' : ['fasta'], 'optional' : ['name','reference','abskew','chimealns','minh','mindiv','xn','dn','xa','chunks','minchunk','idsmoothwindow','minsmoothid','maxp','skipgaps','skipgaps2','minlen','maxlen','ucl','queryfract','processors']}) cmd_dict['chop.seqs'] = dict({'required' : ['fasta','numbases'], 'optional' : ['countgaps','keep','short']}) cmd_dict['classify.otu'] = dict({'required' : ['list','taxonomy'],'optional' : ['name','cutoff','label','group','probs','basis','reftaxonomy']}) - #cmd_dict['classify.seqs'] = dict({'required' : ['fasta','template','taxonomy'],'optional' : ['name','search','ksize','method','match','mismatch','gapopen','gapextend','numwanted','probs','processors']}) cmd_dict['classify.seqs'] = dict({'required' : ['fasta','reference','taxonomy'],'optional' : ['name','search','ksize','method','match','mismatch','gapopen','gapextend','numwanted','probs','processors']}) cmd_dict['clearcut'] = dict({'required' : [['phylip','fasta']],'optional' : ['seed','norandom','shuffle','neighbor','expblen','expdist','ntrees','matrixout','kimura','jukes','protein','DNA']}) - #cmd_dict['cluster'] = dict({'required' : [] , 'optional' : ['method','cutoff','hard','precision']}) cmd_dict['cluster'] = dict({'required' : [['phylip','column']] , 'optional' : ['name','method','cutoff','hard','precision','sim','showabund','timing']}) - #cmd_dict['cluster.classic'] = dict({'required' : ['phylip'] , 'optional' : ['method','cutoff','hard','precision']}) cmd_dict['cluster.classic'] = dict({'required' : ['phylip'] , 'optional' : ['name','method','cutoff','hard','sim','precision']}) cmd_dict['cluster.fragments'] = dict({'required' : ['fasta'] , 'optional' : ['name','diffs','percent']}) cmd_dict['cluster.split'] = dict({'required' : [['fasta','phylip','column']] , 'optional' : ['name','method','splitmethod','taxonomy','taxlevel','showabund','cutoff','hard','large','precision','timing','processors']}) - #cmd_dict['collect.shared'] = dict({'required' : [], 'optional' : ['calc','label','freq','groups','all']}) cmd_dict['collect.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','freq','groups','all']}) - #cmd_dict['collect.single'] = dict({'required' : [], 'optional' : ['calc','abund','size','label','freq']}) cmd_dict['collect.single'] = dict({'required' : [['list', 'sabund', 'rabund', 'shared']], 'optional' : ['calc','abund','size','label','freq']}) - cmd_dict['consensus.seqs'] = dict({'required' : ['fasta'], 'optional' : ['list','name','label']}) + cmd_dict['consensus.seqs'] = dict({'required' : ['fasta'], 'optional' : ['list','name','label','cutoff']}) cmd_dict['corr.axes'] = dict({'required' : [['shared','relabund','metadata'],'axes'], 'optional' : ['label','groups','method','numaxes']}) + cmd_dict['count.seqs'] = dict({'required' : ['name'], 'optional' : ['group','groups']}) cmd_dict['degap.seqs'] = dict({'required' : ['fasta']}) cmd_dict['deunique.seqs'] = dict({'required' : ['fasta','name'], 'optional' : []}) - #cmd_dict['dist.seqs'] = dict({'required' : ['fasta'], 'optional' : ['calc','countends','output','cutoff','processors']}) + cmd_dict['deunique.tree'] = dict({'required' : ['tree','name'], 'optional' : []}) cmd_dict['dist.seqs'] = dict({'required' : ['fasta'], 'optional' : ['calc','countends','output','cutoff','oldfasta','column','processors']}) - #cmd_dict['dist.shared'] = dict({'required' : [], 'optional' : ['calc','label','groups','output']}) - cmd_dict['dist.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','groups','output']}) + cmd_dict['dist.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','groups','output','processors']}) cmd_dict['fastq.info'] = dict({'required' : ['fastq'], 'optional' : []}) cmd_dict['filter.seqs'] = dict({'required' : ['fasta'], 'optional' : ['vertical','trump','soft','hard','processors']}) - #cmd_dict['get.group'] = dict({'required' : [], 'optional' : []}) cmd_dict['get.group'] = dict({'required' : ['shared'], 'optional' : []}) cmd_dict['get.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','taxonomy']}) cmd_dict['get.lineage'] = dict({'required' : ['taxonomy','taxon'],'optional' : ['fasta','name','group','list','alignreport','dups']}) - ##cmd_dict['get.otulist'] = dict({'required' : [], 'optional' : []}) cmd_dict['get.otulist'] = dict({'required' : ['list'], 'optional' : ['label','sort']}) - #cmd_dict['get.oturep'] = dict({'required' : ['fasta','list'], 'optional' : ['phylip','column','name','label','group','groups','sorted','precision','cutoff','large','weighted']}) cmd_dict['get.oturep'] = dict({'required' : ['fasta','list',['phylip','column']], 'optional' : ['name','label','group','groups','sorted','precision','cutoff','large','weighted']}) cmd_dict['get.otus'] = dict({'required' : ['group','list','label'], 'optional' : ['groups','accnos']}) - ##cmd_dict['get.rabund'] = dict({'required' : [],'optional' : []}) cmd_dict['get.rabund'] = dict({'required' : [['list','sabund']],'optional' : ['sorted','label']}) - #cmd_dict['get.relabund'] = dict({'required' : [],'optional' : ['scale','label','groups']}) cmd_dict['get.relabund'] = dict({'required' : ['shared'],'optional' : ['scale','label','groups']}) - ##cmd_dict['get.sabund'] = dict({'required' : [],'optional' : []}) cmd_dict['get.sabund'] = dict({'required' : [['list','rabund']],'optional' : ['label']}) cmd_dict['get.seqs'] = dict({'required' : ['accnos',['fasta','qfile','name','group','list','alignreport','taxonomy']], 'optional' : ['dups']}) - ##cmd_dict['get.sharedseqs'] = dict({'required' : [], 'optional' : []}) cmd_dict['get.sharedseqs'] = dict({'required' : ['list','group'], 'optional' : ['label', 'unique', 'shared', 'output', 'fasta']}) cmd_dict['hcluster'] = dict({'required' : [['column','phylip']] , 'optional' : ['name','method','cutoff','hard','precision','sorted','showabund','timing']}) - #cmd_dict['heatmap.bin'] = dict({'required' : [], 'optional' : ['label','groups','scale','sorted','numotu','fontsize']}) cmd_dict['heatmap.bin'] = dict({'required' : [['list', 'sabund', 'rabund', 'shared']], 'optional' : ['label','groups','scale','sorted','numotu','fontsize']}) - #cmd_dict['heatmap.sim'] = dict({'required' : [], 'optional' : ['calc','phylip','column','name','label','groups']}) cmd_dict['heatmap.sim'] = dict({'required' : [['shared','phylip','column']], 'optional' : ['calc','name','label','groups']}) cmd_dict['homova'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) cmd_dict['indicator'] = dict({'required' : ['tree',['shared','relabund']], 'optional' : ['groups','label','design']}) - #cmd_dict['libshuff'] = dict({'required' : [],'optional' : ['iters','form','step','cutoff']}) cmd_dict['libshuff'] = dict({'required' : ['phylip','group'],'optional' : ['groups','iters','form','sim','step','cutoff']}) cmd_dict['list.seqs'] = dict({'required' : [['fasta','name','group','list','alignreport','taxonomy']]}) cmd_dict['make,fastq'] = dict({'required' : ['fasta','qfile'] , 'optional' : []}) - #cmd_dict['make.group'] = dict({'required' : ['fasta','groups'], 'optional' : ['output']}) cmd_dict['make.group'] = dict({'required' : ['fasta','groups'], 'optional' : []}) cmd_dict['make.shared'] = dict({'required' : ['list','group'], 'optional' : ['label','groups','ordergroup']}) cmd_dict['mantel'] = dict({'required' : ['phylip','phylip2'] , 'optional' : ['method','iters']}) cmd_dict['merge.files'] = dict({'required' : ['input','output']}) cmd_dict['merge.groups'] = dict({'required' : ['shared','design'], 'optional' : ['groups', 'label']}) - #cmd_dict['metastats'] = dict({'required' : ['design'], 'optional' : ['groups', 'label','iters','threshold','sets','processors']}) cmd_dict['metastats'] = dict({'required' : ['shared','design'], 'optional' : ['groups', 'label','iters','threshold','sets','processors']}) cmd_dict['nmds'] = dict({'required' : ['phylip'], 'optional' : ['axes','mindim','maxdim','iters','maxiters','epsilon']}) - #cmd_dict['normalize.shared'] = dict({'required' : [], 'optional' : ['label','method','norm','groups']}) cmd_dict['normalize.shared'] = dict({'required' : [['shared','relabund']], 'optional' : ['label','method','norm','groups','makerelabund']}) - ##cmd_dict['otu.hierarchy'] = dict({'required' : [], 'optional' : []}) cmd_dict['otu.hierarchy'] = dict({'required' : ['list','label'], 'optional' : ['output']}) cmd_dict['pairwise.seqs'] = dict({'required' : ['fasta'], 'optional' : ['align','calc','countends','output','cutoff','match','mismatch','gapopen','gapextend','processors']}) cmd_dict['parse.list'] = dict({'required' : ['list','group'], 'optional' : ['label']}) - #cmd_dict['parsimony'] = dict({'required' : [], 'optional' : ['groups','iters','random','processors']}) cmd_dict['parsimony'] = dict({'required' : ['tree'], 'optional' : ['group','groups','name','iters','random','processors']}) - #cmd_dict['pca'] = dict({'required' : [], 'optional' : ['label','groups','metric']}) cmd_dict['pca'] = dict({'required' : [['shared','relabund']], 'optional' : ['label','groups','metric']}) - #cmd_dict['pcoa'] = dict({'required' : ['phylip'], 'optional' : []}) cmd_dict['pcoa'] = dict({'required' : ['phylip'], 'optional' : ['metric']}) - #cmd_dict['phylo.diversity'] = dict({'required' : [],'optional' : ['groups','iters','freq','scale','rarefy','collect','summary','processors']}) - cmd_dict['phylo.diversity'] = dict({'required' : ['tree','group'],'optional' : ['name','groups','iters','freq','scale','rarefy','collect','summary','processors']}) + cmd_dict['phylo.diversity'] = dict({'required' : ['tree'],'optional' : ['group','name','groups','iters','freq','scale','rarefy','collect','summary','processors']}) cmd_dict['phylotype'] = dict({'required' : ['taxonomy'],'optional' : ['name','cutoff','label']}) - #cmd_dict['pre.cluster'] = dict({'required' : ['fasta'], 'optional' : ['names','diffs']}) cmd_dict['pre.cluster'] = dict({'required' : ['fasta'], 'optional' : ['name','diffs']}) - #cmd_dict['rarefaction.shared'] = dict({'required' : [], 'optional' : ['label','iters','groups','jumble']}) cmd_dict['rarefaction.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','iters','groups','jumble']}) - #cmd_dict['rarefaction.single'] = dict({'required' : [], 'optional' : ['calc','abund','iters','label','freq','processors']}) cmd_dict['rarefaction.single'] = dict({'required' : [['list', 'sabund', 'rabund', 'shared']], 'optional' : ['calc','abund','iters','label','freq','processors']}) - #cmd_dict['read.dist'] = dict({'required' : [['phylip','column']], 'optional' : ['name','cutoff','hard','precision','sim','group']}) - #cmd_dict['read.otu'] = dict({'required' : [['rabund','sabund','list','shared','relabund']], 'optional' : ['label','group','groups','ordergroup']}) - #cmd_dict['read.tree'] = dict({'required' : ['tree'], 'optional' : ['name','group']}) cmd_dict['remove.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','taxonomy']}) cmd_dict['remove.lineage'] = dict({'required' : ['taxonomy','taxon'],'optional' : ['fasta','name','group','list','alignreport','dups']}) cmd_dict['remove.otus'] = dict({'required' : ['group','list','label'], 'optional' : ['groups','accnos']}) - #cmd_dict['remove.rare'] = dict({'required' : [['list','sabund','rabund','shared'],'nseqs'], 'optional' : ['group','groups','label','bygroup']}) cmd_dict['remove.rare'] = dict({'required' : [['list','sabund','rabund','shared'],'nseqs'], 'optional' : ['group','groups','label','bygroup']}) cmd_dict['remove.seqs'] = dict({'required' : ['accnos',['fasta','qfile','name','group','list','alignreport','taxonomy']], 'optional' : ['dups']}) cmd_dict['reverse.seqs'] = dict({'required' : ['fasta']}) @@ -293,118 +256,17 @@ cmd_dict['sens.spec'] = dict({'required' : ['list',['column','phylip']] , 'optional' : ['label','cutoff','hard','precision']}) cmd_dict['sffinfo'] = dict({'required' : [['sff','sfftxt']], 'optional' : ['fasta','qfile','trim','sfftxt','flow','accnos']}) cmd_dict['split.abund'] = dict({'required' : ['fasta',['name','list']], 'optional' : ['cutoff','group','groups','label','accnos']}) - #cmd_dict['split.groups'] = dict({'required' : ['fasta','group'], 'optional' : []}) cmd_dict['split.groups'] = dict({'required' : ['fasta','group'], 'optional' : ['name','groups']}) cmd_dict['sub.sample'] = dict({'required' : [['fasta','list','sabund','rabund','shared']], 'optional' : ['name','group','groups','label','size','persample']}) - #cmd_dict['summary.seqs'] = dict({'required' : ['fasta'],'outputs' : ['names']}) cmd_dict['summary.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name','processors']}) - #cmd_dict['summary.shared'] = dict({'required' : [], 'optional' : ['calc','label','groups','all','distance']}) cmd_dict['summary.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','groups','all','distance','processors']}) - #cmd_dict['summary.single'] = dict({'required' : [], 'optional' : ['calc','abund','size','label','groupmode']}) cmd_dict['summary.single'] = dict({'required' : [['list','sabund','rabund','shared']], 'optional' : ['calc','abund','size','label','groupmode']}) - #cmd_dict['tree.shared'] = dict({'required' : [], 'optional' : ['groups','calc','cutoff','precision','label']}) cmd_dict['tree.shared'] = dict({'required' : [['shared','phylip','column']], 'optional' : ['name','groups','calc','cutoff','precision','label']}) - cmd_dict['trim.seqs'] = dict({'required' : ['fasta'], 'optional' : ['group','oligos','qfile','qaverage','qthreshold','qwindowaverage','qwindowsize','rollaverage','qstepsize','qtrim','flip','maxambig','maxhomop','minlength','maxlength','bdiffs','pdiffs','tdiffs','allfiles','keepfirst','removelast']}) - #cmd_dict['unifrac.unweighted'] = dict({'required' : [], 'optional' : ['groups','iters','distance','random','root','processors']}) + cmd_dict['trim.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name','group','oligos','qfile','qaverage','qthreshold','qwindowaverage','qwindowsize','rollaverage','qstepsize','qtrim','flip','maxambig','maxhomop','minlength','maxlength','bdiffs','pdiffs','tdiffs','allfiles','keepfirst','removelast']}) cmd_dict['unifrac.unweighted'] = dict({'required' : ['tree'], 'optional' : ['name','group','groups','iters','distance','random','root','processors']}) - #cmd_dict['unifrac.weighted'] = dict({'required' : [], 'optional' : ['groups','iters','distance','random','root','processors']}) cmd_dict['unifrac.weighted'] = dict({'required' : ['tree'], 'optional' : ['name','group','groups','iters','distance','random','root','processors']}) - #cmd_dict['unique.seqs'] = dict({'required' : ['fasta'], 'optional' : ['names']}) cmd_dict['unique.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name']}) - #cmd_dict['venn'] = dict({'required' : [], 'optional' : ['calc','label','groups','abund','nseqs','permute']}) cmd_dict['venn'] = dict({'required' : [['list','shared']], 'optional' : ['calc','label','groups','abund','nseqs','permute']}) - ## - """ - cmd_dict['merge.files'] = dict({'required' : ['input','output']}) - cmd_dict['make.group'] = dict({'required' : ['fasta','groups'], 'optional' : ['output']}) - cmd_dict['merge.groups'] = dict({'required' : ['shared','design'], 'optional' : ['groups', 'label']}) - cmd_dict['summary.seqs'] = dict({'required' : ['fasta'], - 'outputs' : ['.names']}) - cmd_dict['reverse.seqs'] = dict({'required' : ['fasta']}) - cmd_dict['degap.seqs'] = dict({'required' : ['fasta']}) - cmd_dict['unique.seqs'] = dict({'required' : ['fasta'], 'optional' : ['names']}) - cmd_dict['deunique.seqs'] = dict({'required' : ['fasta','names'], 'optional' : []}) - cmd_dict['chop.seqs'] = dict({'required' : ['fasta','numbases'], 'optional' : ['keep','short']}) - cmd_dict['filter.seqs'] = dict({'required' : ['fasta'], 'optional' : ['vertical','trump','soft','hard','processors']}) - cmd_dict['screen.seqs'] = dict({'required' : ['fasta'], 'optional' : ['start','end','maxambig','maxhomop','minlength','maxlength','criteria','optimize','name','group','alignreport','processors']}) - cmd_dict['trim.seqs'] = dict({'required' : ['fasta'], 'optional' : ['group','oligos','qfile','qaverage','qthreshold','qtrim','flip','maxambig','maxhomop','minlength','maxlength','bdiffs','pdiffs','tdiffs','allfiles','keepfirst','removelast']}) - cmd_dict['list.seqs'] = dict({'required' : [['fasta','name','group','list','alignreport','taxonomy']]}) - cmd_dict['get.seqs'] = dict({'required' : ['accnos',['fasta','qfile','name','group','list','alignreport','taxonomy']], 'optional' : ['dups']}) - cmd_dict['remove.seqs'] = dict({'required' : ['accnos',['fasta','qfile','name','group','list','alignreport','taxonomy']], 'optional' : ['dups']}) - cmd_dict['align.seqs'] = dict({'required' : ['candidate','template'], 'optional' : ['search','ksize','align','match','mismatch','gapopen','gapextend','flip','threshold','processors']}) - cmd_dict['align.check'] = dict({'required' : ['fasta','map']}) - cmd_dict['pre.cluster'] = dict({'required' : ['fasta'], 'optional' : ['names','diffs']}) - cmd_dict['bin.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name','label','group']}) - cmd_dict['classify.seqs'] = dict({'required' : ['fasta','template','taxonomy'],'optional' : ['name','search','ksize','method','match','mismatch','gapopen','gapextend','numwanted','probs','processors']}) - cmd_dict['classify.otu'] = dict({'required' : ['list','taxonomy'],'optional' : ['name','cutoff','label','group','probs','basis','reftaxonomy']}) - # label=0.01-0.02-0.03 from 0.01,0.02,0.03 string.replace(options.label,',','-') - cmd_dict['chimera.bellerophon'] = dict({'required' : ['fasta'], 'optional' : ['filter','correction','window','increment','processors']}) - cmd_dict['chimera.ccode'] = dict({'required' : ['fasta','template'], 'optional' : ['filter','mask','window','numwanted','processors']}) - cmd_dict['chimera.check'] = dict({'required' : ['fasta','template'], 'optional' : ['ksize','svg','name','increment','processors']}) - cmd_dict['chimera.pintail'] = dict({'required' : ['fasta','template'], 'optional' : ['conservation','quantile','filter','mask','window','increment','processors']}) - cmd_dict['chimera.slayer'] = dict({'required' : ['fasta','template'], 'optional' : ['name','search','window','increment','match','mismatch','numwanted','parents','minsim','mincov','iters','minbs','minsnp','divergence','realign','split','processors']}) - cmd_dict['dist.seqs'] = dict({'required' : ['fasta'], 'optional' : ['calc','countends','output','cutoff','processors']}) - cmd_dict['pairwise.seqs'] = dict({'required' : ['fasta'], 'optional' : ['align','calc','countends','output','cutoff','match','mismatch','gapopen','gapextend','processors']}) - cmd_dict['read.dist'] = dict({'required' : [['phylip','column']], 'optional' : ['name','cutoff','hard','precision','sim','group']}) - cmd_dict['read.otu'] = dict({'required' : [['rabund','sabund','list','shared','relabund']], 'optional' : ['label','group','groups','ordergroup']}) - cmd_dict['read.tree'] = dict({'required' : ['tree'], 'optional' : ['name','group']}) - cmd_dict['cluster'] = dict({'required' : [] , 'optional' : ['method','cutoff','hard','precision']}) - cmd_dict['hcluster'] = dict({'required' : [['column','phylip']] , 'optional' : ['name','method','cutoff','hard','precision','sorted','showabund']}) - cmd_dict['cluster.fragments'] = dict({'required' : ['fasta'] , 'optional' : ['name','diffs','percent']}) - cmd_dict['cluster.split'] = dict({'required' : [['fasta','phylip','column']] , 'optional' : ['name','method','splitmethod','taxonomy','taxlevel','showabund','cutoff','hard','large','precision','timing','processors']}) - cmd_dict['metastats'] = dict({'required' : ['design'], 'optional' : ['groups', 'label','iters','threshold','sets','processors']}) - cmd_dict['summary.single'] = dict({'required' : [], 'optional' : ['calc','abund','size','label','groupmode']}) - cmd_dict['summary.shared'] = dict({'required' : [], 'optional' : ['calc','label','groups','all','distance']}) - cmd_dict['collect.single'] = dict({'required' : [], 'optional' : ['calc','abund','size','label','freq']}) - cmd_dict['collect.shared'] = dict({'required' : [], 'optional' : ['calc','label','freq','groups','all']}) - cmd_dict['rarefaction.single'] = dict({'required' : [], 'optional' : ['calc','abund','iters','label','freq','processors']}) - cmd_dict['rarefaction.shared'] = dict({'required' : [], 'optional' : ['label','iters','groups','jumble']}) - cmd_dict['normalize.shared'] = dict({'required' : [], 'optional' : ['label','method','norm','groups']}) - cmd_dict['dist.shared'] = dict({'required' : [], 'optional' : ['calc','label','groups','output']}) - cmd_dict['split.abund'] = dict({'required' : ['fasta',['name','list']], 'optional' : ['cutoff','group','groups','label','accnos']}) - cmd_dict['split.groups'] = dict({'required' : ['fasta','group'], 'optional' : []}) - cmd_dict['tree.shared'] = dict({'required' : [], 'optional' : ['groups','calc','cutoff','precision','label']}) - cmd_dict['unifrac.unweighted'] = dict({'required' : [], 'optional' : ['groups','iters','distance','random','root','processors']}) - cmd_dict['unifrac.weighted'] = dict({'required' : [], 'optional' : ['groups','iters','distance','random','root','processors']}) - cmd_dict['parsimony'] = dict({'required' : [], 'optional' : ['groups','iters','random','processors']}) - cmd_dict['sffinfo'] = dict({'required' : ['sff'], 'optional' : ['fasta','qfile','trim','sfftxt','flow','accnos']}) - cmd_dict['fastq.info'] = dict({'required' : ['fastq'], 'optional' : []}) - cmd_dict['heatmap.bin'] = dict({'required' : [], 'optional' : ['label','groups','scale','sorted','numotu','fontsize']}) - cmd_dict['heatmap.sim'] = dict({'required' : [], 'optional' : ['calc','phylip','column','name','label','groups']}) - cmd_dict['venn'] = dict({'required' : [], 'optional' : ['calc','label','groups','abund','nseqs','permute']}) - cmd_dict['pcoa'] = dict({'required' : ['phylip'], 'optional' : []}) - cmd_dict['pca'] = dict({'required' : [], 'optional' : ['label','groups','metric']}) - cmd_dict['nmds'] = dict({'required' : ['phylip'], 'optional' : ['axes','mindim','maxdim','iters','maxiters','epsilon']}) - cmd_dict['corr.axes'] = dict({'required' : [['shared','relabund','metadata'],'axes'], 'optional' : ['label','groups','method','numaxes']}) - cmd_dict['get.group'] = dict({'required' : [], 'optional' : []}) - cmd_dict['phylotype'] = dict({'required' : ['taxonomy'],'optional' : ['name','cutoff','label']}) - cmd_dict['phylo.diversity'] = dict({'required' : [],'optional' : ['groups','iters','freq','scale','rarefy','collect','summary','processors']}) - cmd_dict['get.oturep'] = dict({'required' : ['fasta','list'], 'optional' : ['phylip','column','name','label','group','groups','sorted','precision','cutoff','large','weighted']}) - cmd_dict['get.relabund'] = dict({'required' : [],'optional' : ['scale','label','groups']}) - cmd_dict['libshuff'] = dict({'required' : [],'optional' : ['iters','form','step','cutoff']}) - # clearcut options not needed in galaxy: 'version','verbose','quiet','stdout' - cmd_dict['clearcut'] = dict({'required' : [['list','fasta']],'optional' : ['seed','norandom','shuffle','neighbor','expblen','expdist','ntrees','matrixout','kimura','jukes','protein','DNA']}) - cmd_dict['get.lineage'] = dict({'required' : ['taxonomy','taxon'],'optional' : ['fasta','name','group','list','alignreport','dups']}) - cmd_dict['remove.lineage'] = dict({'required' : ['taxonomy','taxon'],'optional' : ['fasta','name','group','list','alignreport','dups']}) - cmd_dict['bootstrap.shared'] = dict({'required' : [], 'optional' : ['calc','groups','iters','label']}) - cmd_dict['cluster.classic'] = dict({'required' : ['phylip'] , 'optional' : ['method','cutoff','hard','precision']}) - cmd_dict['get.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','taxonomy']}) - cmd_dict['remove.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','taxonomy']}) - cmd_dict['get.otus'] = dict({'required' : ['group','list','label'], 'optional' : ['groups','accnos']}) - cmd_dict['remove.otus'] = dict({'required' : ['group','list','label'], 'optional' : ['groups','accnos']}) - cmd_dict['remove.rare'] = dict({'required' : [['list','sabund','rabund','shared'],'nseqs'], 'optional' : ['group','groups','label','bygroup']}) - cmd_dict['parse.list'] = dict({'required' : ['list','group'], 'optional' : ['label']}) - - cmd_dict['sub.sample'] = dict({'required' : [['fasta','list','sabund','rabund','shared']], 'optional' : ['name','group','groups','label','size','persample']}) - cmd_dict['consensus.seqs'] = dict({'required' : ['fasta'], 'optional' : ['list','name','label']}) - cmd_dict['indicator'] = dict({'required' : ['tree',['shared','relabund']], 'optional' : ['groups','label','design']}) - - cmd_dict['amova'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) - cmd_dict['homova'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) - cmd_dict['anosim'] = dict({'required' : ['phylip','design'] , 'optional' : ['alpha','iters']}) - cmd_dict['mantel'] = dict({'required' : ['phylip','phylip2'] , 'optional' : ['method','iters']}) - cmd_dict['make,fastq'] = dict({'required' : ['fasta','qfile'] , 'optional' : []}) - """ parser = optparse.OptionParser() # Options for managing galaxy interaction @@ -489,6 +351,7 @@ parser.add_option( '--gapextend', dest='gapextend', type="float", help='Penalty for extending a gap, default is -1.0' ) parser.add_option( '--precision', dest='precision', type="int", help='' ) parser.add_option( '--threshold', dest='threshold', type="float", help='Cutoff at which an alignment is deemed bad and the reverse complement may be tried, 0.0 - 1.0 default 0.50' ) + parser.add_option( '--sim', dest='sim', help='Calculate similarity rather than distance' ) parser.add_option( '--map', dest='map', help='File containing the secondary structure map.' ) parser.add_option( '--label', dest='label', type='string', action="callback", callback=multi_val_callback, help='Distance levels you would like a output files created for(separated by commas or dashes)' ) parser.add_option( '--filter', dest='filter', help='If true, a 50% soft filter will be applied' ) @@ -507,7 +370,6 @@ parser.add_option( '--hard', dest='hard', help='Hard Column Filter - A file should only contain one line consisting of 0 and 1 chars' ) parser.add_option( '--calc', dest='calc', help='Calc Method - Gap Penality' ) parser.add_option( '--countends', dest='countends', help='Penalize terminal gaps' ) - # parser.add_option( '--cutoff', dest='cutoff', type="float", help='Distance Cutoff threshold, discard larger distances' ) parser.add_option( '--cutoff', dest='cutoff', help='Distance Cutoff threshold, discard larger distances' ) parser.add_option( '--countgaps', dest='countgaps', help='count gaps as bases' ) parser.add_option( '--output', dest='output', help='Format for output' ) @@ -584,6 +446,24 @@ parser.add_option( '--persample', dest='persample', help='sub sample option' ) parser.add_option( '--timing', dest='timing', help='timing option' ) parser.add_option( '--processors', dest='processors', type='int', action='callback', callback=processors_callback, help='Number of processors to use' ) + parser.add_option( '--abskew', dest='abskew', type="float", help='Minimum abundance skew.') + parser.add_option( '--chimealns', dest='chimealns', help='Boolean - produce a file containing multiple alignments of query sequences') + parser.add_option( '--minh', dest='minh', type="float", help='mininum score to report chimera.') + parser.add_option( '--mindiv', dest='mindiv', type="float", help='mininum score to report chimera.') + parser.add_option( '--xn', dest='xn', type="float", help='weight of a no vote') + parser.add_option( '--dn', dest='dn', type="float", help='pseudo-count prior on number of no votes') + parser.add_option( '--xa', dest='xa', type="float", help='weight of an abstain vote') + parser.add_option( '--chunks', dest='chunks', type="int", help='the number of chunks to extract from the query sequence') + parser.add_option( '--minchunk', dest='minchunk', type="int", help='the minimum length of a chunk') + parser.add_option( '--idsmoothwindow', dest='idsmoothwindow', type="int", help='ength of id smoothing window') + parser.add_option( '--minsmoothid', dest='minsmoothid', type="float", help='minimum factional identity over smoothed window') + parser.add_option( '--maxp', dest='maxp', type="int", help='maximum number of candidate parents to consider') + parser.add_option( '--skipgaps', dest='skipgaps', help='Boolean') + parser.add_option( '--skipgaps2', dest='skipgaps2', help='Boolean') + parser.add_option( '--ucl', dest='ucl', help='') + parser.add_option( '--queryfract', dest='queryfract', type="float", help='') + parser.add_option( '--minlen', dest='minlen', type="int", help='Minimun sequence length' ) + parser.add_option( '--maxlen', dest='maxlen', type="int", help='Maximun sequence length' ) # include read.otu options parser.add_option( '--rabund', dest='rabund', help='' ) parser.add_option( '--sabund', dest='sabund', help='' ) @@ -742,7 +622,7 @@ if re.match('^\d*\s*$',line): continue # if re.match('^(unique|[0-9.]*)(\t\d+)+',line): # abundance from cluster commands - if not options.cmd.startswith('unifrac') and re.match('^([0-9.]+)(\t\d+)*',line): # abundance from cluster commands, allow unique line into info + if not options.cmd.startswith('unifrac') and re.match('^(unique|[0-9.]+)(\t\d+)*',line): # abundance from cluster commands, allow unique line into info continue if re.match('Output .*',line): break
--- a/mothur/tools/mothur/normalize.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/normalize.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_normalize_shared" name="Normalize.shared" version="1.19.0"> +<tool id="mothur_normalize_shared" name="Normalize.shared" version="1.20.0"> <description>Normalize the number of sequences per group to a specified level</description> <command interpreter="python"> mothur_wrapper.py @@ -30,6 +30,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -37,6 +38,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/pca.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/pca.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_pca" name="Pca" version="1.19.0"> +<tool id="mothur_pca" name="Pca" version="1.20.0"> <description>Principal Coordinate Analysis for a shared file</description> <command interpreter="python"> mothur_wrapper.py @@ -26,6 +26,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -33,6 +34,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/phylo.diversity.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/phylo.diversity.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_phylo_diversity" name="Phylo.diversity" version="1.19.0"> +<tool id="mothur_phylo_diversity" name="Phylo.diversity" version="1.20.0"> <description>Alpha Diversity calculates unique branch length</description> <command interpreter="python"> mothur_wrapper.py @@ -6,11 +6,13 @@ --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.phylodiv\.summary$:'$summary_out,'^\S+\.phylodiv$:'$collectors_out,'^\S+\.rarefaction$:'$rarefaction_out --outputdir='$logfile.extra_files_path' --tree=$tree - #if $group.__str__ != "None" and len($group.__str__) > 0: - --group='$group' - #end if - #if $groups.__str__ != "None" and len($groups.__str__) > 0: - --groups='$groups' + #if $grouping.use: + #if $grouping.group.__str__ != "None" and len($grouping.group.__str__) > 0: + --group='$grouping.group' + #end if + #if $grouping.groups.__str__ != "None" and len($grouping.groups.__str__) > 0: + --groups='$grouping.groups' + #end if #end if #if $name.__str__ != "None" and len($name.__str__) > 0: --name='$name' @@ -32,14 +34,21 @@ <inputs> <!-- list,group or shared --> <param name="tree" type="data" format="tre" label="tree - Phylogenetic Tree"/> - <param name="group" type="data" format="groups" label="group - Group file for the tree"/> - <param name="groups" type="select" label="groups - Groups to display" multiple="true"> - <options from_dataset="group"> - <column name="name" index="1"/> - <column name="value" index="1"/> - <filter type="unique_value" name="unq_grp" column="1" /> - </options> - </param> + <conditional name="grouping"> + <param name="use" type="boolean" truevalue="yes" falsevalue="no" checked="true" label="Analyze by group using a Group file"/> + <when value="yes"> + <param name="group" type="data" format="groups" label="group - Group file for the tree"/> + <param name="groups" type="select" label="groups - Groups to display" multiple="true"> + <help>All groups displayed if none are selected.</help> + <options from_dataset="group"> + <column name="name" index="1"/> + <column name="value" index="1"/> + <filter type="unique_value" name="unq_grp" column="1" /> + </options> + </param> + </when> + <when value="no"/> + </conditional> <!-- use_groups --> <param name="name" type="data" format="names" optional="true" label="name - Sequences Name reference file for the tree"/> <param name="iters" type="integer" value="1000" label="iters - Number of iterations to try (default 1000)"/> <param name="freq" type="float" value="0.0" label="freq - Reporting frequency"
--- a/mothur/tools/mothur/pre.cluster.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/pre.cluster.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_pre_cluster" name="Pre.cluster" version="1.19.0"> +<tool id="mothur_pre_cluster" name="Pre.cluster" version="1.20.0"> <description>Remove sequences due to pyrosequencing errors</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/rarefaction.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/rarefaction.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_rarefaction_shared" name="Rarefaction.shared" version="1.19.0"> +<tool id="mothur_rarefaction_shared" name="Rarefaction.shared" version="1.20.0"> <description>Generate inter-sample rarefaction curves for OTUs</description> <command interpreter="python"> mothur_wrapper.py @@ -26,6 +26,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -34,6 +35,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> <filter type="add_value" name="all" value="all" /> </options>
--- a/mothur/tools/mothur/rarefaction.single.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/rarefaction.single.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,12 +1,14 @@ -<tool id="mothur_rarefaction_single" name="Rarefaction.single" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_rarefaction_single" name="Rarefaction.single" version="1.20.0" force_history_refresh="True"> <description>Generate intra-sample rarefaction curves for OTUs</description> <command interpreter="python"> mothur_wrapper.py --cmd='rarefaction.single' --result='^mothur.\S+\.logfile$:'$logfile --outputdir='$logfile.extra_files_path' - --datasetid='$logfile.id' --new_file_path='$__new_file_path__' - --new_datasets='^\S+?\.(((\S+)\.)?(rarefaction|r_\w*))$:tabular' + #if $as_datasets.__str__ == 'yes': + --datasetid='$logfile.id' --new_file_path='$__new_file_path__' + --new_datasets='^\S+?\.(((\S+)\.)?(rarefaction|r_\w*))$:tabular' + #end if #if isinstance($otu.datatype, $__app__.datatypes_registry.get_datatype_by_extension('shared').__class__): --shared=$otu #elif isinstance($otu.datatype, $__app__.datatypes_registry.get_datatype_by_extension('rabund').__class__): @@ -54,6 +56,7 @@ <param name="iters" type="integer" value="0" label="iters - Number of randomizations"/> <param name="freq" type="float" value="0.0" label="freq - Reporting frequency" help="if between 0 and 1 the fraction of sequences to sample, if greater than one - report every n iterations"/> + <param name="as_datasets" type="boolean" truevalue="yes" falsevalue="no" checked="True" label="Create a new history dataset for each label and calculator"/> </inputs> <outputs> <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" />
--- a/mothur/tools/mothur/remove.lineage.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/remove.lineage.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_remove_lineage" name="Remove.lineage" version="1.19.0"> +<tool id="mothur_remove_lineage" name="Remove.lineage" version="1.20.0"> <description>Picks by taxon</description> <command interpreter="python"> mothur_wrapper.py @@ -9,7 +9,7 @@ --cmd='remove.lineage' --outputdir='$logfile.extra_files_path' --taxonomy=$taxonomy - --taxon="'$re.sub('\(\d+\)','',$taxon.value.__str__)'" + --taxon="'$re.sub('(\s|,)+',',',$re.sub('\(\d+\)','',$taxon.value.__str__))'" #if $fasta_in.__str__ != "None" and len($fasta_in.__str__) > 0: --fasta=$fasta_in #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.pick.\2',$os.path.basename($fasta_in.__str__)) + ":'" + $fasta_out.__str__] @@ -35,14 +35,16 @@ </command> <inputs> <param name="taxonomy" type="data" format="seq.taxonomy" label="taxonomy - Taxonomy"/> - <param name="taxons" type="select" size="120" label="Browse Taxons from Taxonomy"> + <!-- + <param name="taxons" type="select" size="120" multiple="True" label="Browse Taxons from Taxonomy"> <options from_dataset="taxonomy"> <column name="name" index="1"/> <column name="value" index="1"/> <filter type="unique_value" name="unique_taxon" column="1" /> </options> </param> - <param name="taxon" type="text" size="120" label="taxon - Select Taxon"/> + --> + <param name="taxon" type="text" area="True" size="5x120" label="taxon - Select Taxons for filtering" help="Enter 1 or more taxons separated by whitespace or commas"/> <param name="fasta_in" type="data" format="fasta" optional="true" label="fasta - Fasta Sequences"/> <param name="group_in" type="data" format="groups" optional="true" label="group - Groups"/> <param name="alignreport_in" type="data" format="align.report" optional="true" label="alignreport - Align Report"/>
--- a/mothur/tools/mothur/remove.rare.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/remove.rare.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_remove_rare" name="Remove.rare" version="1.19.0"> +<tool id="mothur_remove_rare" name="Remove.rare" version="1.20.0"> <description>Remove rare OTUs</description> <command interpreter="python"> mothur_wrapper.py @@ -50,6 +50,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param> @@ -58,6 +59,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param>
--- a/mothur/tools/mothur/remove.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/remove.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_remove_seqs" name="Remove.seqs" version="1.19.0"> +<tool id="mothur_remove_seqs" name="Remove.seqs" version="1.20.0"> <description>Remove sequences by name</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/screen.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/screen.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_screen_seqs" name="Screen.seqs" version="1.19.0"> +<tool id="mothur_screen_seqs" name="Screen.seqs" version="1.20.0"> <description>Screen sequences</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/split.abund.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/split.abund.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_split_abund" name="Split.abund" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_split_abund" name="Split.abund" version="1.20.0" force_history_refresh="True"> <description>Separate sequences into rare and abundant groups</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/split.groups.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/split.groups.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_split_groups" name="Split.groups" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_split_groups" name="Split.groups" version="1.20.0" force_history_refresh="True"> <description>Generates a fasta file for each group</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/sub.sample.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/sub.sample.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_sub_sample" name="Sub.sample" version="1.19.0"> +<tool id="mothur_sub_sample" name="Sub.sample" version="1.20.0"> <description>Create a sub sample</description> <command interpreter="python"> mothur_wrapper.py @@ -131,6 +131,7 @@ <options from_dataset="otu_in"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param> @@ -138,6 +139,7 @@ <options from_dataset="otu_in"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param>
--- a/mothur/tools/mothur/summary.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/summary.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_summary_shared" name="Summary.shared" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_summary_shared" name="Summary.shared" version="1.20.0" force_history_refresh="True"> <description>Summary of calculator values for OTUs</description> <command interpreter="python"> mothur_wrapper.py @@ -21,11 +21,12 @@ $distance </command> <inputs> - <param name="otu" type="data" format="shared" label="read.otu(shared=) - OTU Shared"/> + <param name="otu" type="data" format="shared" label="shared - OTU Shared"/> <param name="label" type="select" label="label - OTU Labels" multiple="true"> <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -33,6 +34,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/tree.shared.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/tree.shared.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_tree_shared" name="Tree.shared" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_tree_shared" name="Tree.shared" version="1.20.0" force_history_refresh="True"> <description>Generate a newick tree for dissimilarity among groups</description> <command interpreter="python"> mothur_wrapper.py @@ -56,6 +56,7 @@ <options from_dataset="dist"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -63,6 +64,7 @@ <options from_dataset="dist"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/mothur/trim.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/trim.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_trim_seqs" name="Trim.seqs" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_trim_seqs" name="Trim.seqs" version="1.20.0" force_history_refresh="True"> <description>Trim sequences - primers, barcodes, quality</description> <command interpreter="python"> mothur_wrapper.py @@ -64,9 +64,14 @@ #end if $flip --fasta=$fasta + #if $names.__str__ != "None" and len($names.__str__) > 0: + --name=$names + #end if + </command> <inputs> <param name="fasta" type="data" format="fasta" label="fasta - Sequences"/> + <param name="names" type="data" format="name" label="name - Sequence representative name list"/> <param name="minlength" type="integer" value="0" label="minlength - Minimum Sequence Length (default 0, ignored if < 1 )"/> <param name="maxlength" type="integer" value="0" label="maxlength - Maximum Sequence Length (default 0, ignored if < 1)"/> <param name="maxambig" type="integer" value="-1" label="maxambig - Maximum ambiguous bases (default -1, ignored if < 0)"/> @@ -111,6 +116,9 @@ <outputs> <data format="html" name="logfile" label="${tool.name} on ${on_string}: logfile" /> <data format_source="fasta" name="trim_fasta" label="${tool.name} on ${on_string}: trim.fasta"/> + <data format_source="names" name="trim_names" label="${tool.name} on ${on_string}: trim.names"> + <filter>names != None</filter> + </data> <data format_source="qfile" name="trim_qual" label="${tool.name} on ${on_string}: trim.qual"> <filter>(qual['add'] == 'yes' and len(qual['qfile'].__str__) > 0)</filter> </data>
--- a/mothur/tools/mothur/unique.seqs.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/unique.seqs.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_unique_seqs" name="Unique.seqs" version="1.19.0"> +<tool id="mothur_unique_seqs" name="Unique.seqs" version="1.20.0"> <description>Return unique sequences</description> <command interpreter="python"> mothur_wrapper.py
--- a/mothur/tools/mothur/venn.xml Mon Jun 27 09:34:14 2011 -0500 +++ b/mothur/tools/mothur/venn.xml Mon Jun 27 10:12:25 2011 -0500 @@ -1,4 +1,4 @@ -<tool id="mothur_venn" name="Venn" version="1.19.0" force_history_refresh="True"> +<tool id="mothur_venn" name="Venn" version="1.20.0" force_history_refresh="True"> <description>Generate Venn diagrams for groups </description> <command interpreter="python"> mothur_wrapper.py @@ -53,6 +53,7 @@ <options from_dataset="otu"> <column name="name" index="0"/> <column name="value" index="0"/> + <filter type="static_value" name="ignore_header" keep="False" column="0" value = "label"/> <filter type="unique_value" name="unq_lbl" column="0" /> </options> </param> @@ -60,6 +61,7 @@ <options from_dataset="otu"> <column name="name" index="1"/> <column name="value" index="1"/> + <filter type="static_value" name="ignore_header" keep="False" column="1" value = "Group"/> <filter type="unique_value" name="unq_grp" column="1" /> </options> </param>
--- a/mothur/tools/suite_config.xml Mon Jun 27 09:34:14 2011 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,237 +0,0 @@ -<tool id="mothur_align_check" name="Align.check" version="1.16.0"> - <description>Calculate the number of potentially misaligned bases</description> -</tool> -<tool id="mothur_align_seqs" name="Align.seqs" version="1.16.0"> - <description>Align sequences to a template alignment</description> -</tool> -<tool id="mothur_bin_seqs" name="Bin.seqs" version="1.16.0" force_history_refresh="True"> - <description>Order Sequences by OTU</description> -</tool> -<tool id="mothur_bootstrap_shared" name="Bootstrap.shared" version="1.16.0" force_history_refresh="True"> - <description>Generate a newick trees for dissimilarity among groups</description> -</tool> -<tool id="mothur_chimera_bellerophon" name="Chimera.bellerophon" version="1.16.0"> - <description>Find putative chimeras using bellerophon</description> -</tool> -<tool id="mothur_chimera_ccode" name="Chimera.ccode" version="1.16.0"> - <description>Find putative chimeras using ccode</description> -</tool> -<tool id="mothur_chimera_check" name="Chimera.check" version="1.16.0" force_history_refresh="True"> - <description>Find putative chimeras using chimeraCheck</description> -</tool> -<tool id="mothur_chimera_pintail" name="Chimera.pintail" version="1.16.0"> - <description>Find putative chimeras using pintail</description> -</tool> -<tool id="mothur_chimera_slayer" name="Chimera.slayer" version="1.16.0"> - <description>Find putative chimeras using slayer</description> -</tool> -<tool id="mothur_chop_seqs" name="Chop.seqs" version="1.16.0"> - <description>Trim sequences to a specified length</description> -</tool> -<tool id="mothur_classify_otu" name="Classify.otu" version="1.16.0" force_history_refresh="True"> - <description>Assign sequences to taxonomy</description> -</tool> -<tool id="mothur_classify_seqs" name="Classify.seqs" version="1.16.0"> - <description>Assign sequences to taxonomy</description> -</tool> -<tool id="mothur_clearcut" name="Clearcut" version="1.16.0"> - <description>Generate a tree using relaxed neighbor joining</description> -</tool> -<tool id="mothur_cluster_classic" name="Cluster.classic" version="1.16.0"> - <description>Assign sequences to OTUs (Dotur implementation)</description> -</tool> -<tool id="mothur_cluster_fragments" name="Cluster.fragments" version="1.16.0"> - <description> Group sequences that are part of a larger sequence</description> -</tool> -<tool id="mothur_cluster_split" name="Cluster.split" version="1.16.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit) splits large matrices</description> -</tool> -<tool id="mothur_cluster" name="Cluster" version="1.16.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> -</tool> -<tool id="mothur_collect_shared" name="Collect.shared" version="1.16.0" force_history_refresh="True"> - <description>Generate collector's curves for calculators on OTUs</description> -</tool> -<tool id="mothur_collect_single" name="Collect.single" version="1.16.0" force_history_refresh="True"> - <description>Summary of calculator values for OTUs</description> -</tool> -<tool id="mothur_consensus_seqs" name="Consensus.seqs" version="1.16.0" force_history_refresh="True"> - <description>Find a consensus sequence for each OTU or phylotype</description> -</tool> -<tool id="mothur_corr_axes" name="Corr.axes" version="1.16.0"> - <description>correlation of data to axes</description> -</tool> -<tool id="mothur_degap_seqs" name="Degap.seqs" version="1.16.0"> - <description>Remove gap characters from sequences</description> -</tool> -<tool id="mothur_deunique_seqs" name="Deunique.seqs" version="1.16.0"> - <description>Return all sequences</description> -</tool> -<tool id="mothur_dist_seqs" name="Dist.seqs" version="1.16.0"> - <description>calculate uncorrected pairwise distances between aligned sequences</description> -</tool> -<tool id="mothur_dist_shared" name="Dist.shared" version="1.16.0" force_history_refresh="True"> - <description>Generate a phylip-formatted dissimilarity distance matrix among multiple groups</description> -</tool> -<tool id="mothur_fastq_info" name="Fastq.info" version="1.16.0"> - <description>Convert fastq to fasta and quality</description> -</tool> -<tool id="mothur_filter_seqs" name="Filter.seqs" version="1.16.0" force_history_refresh="True"> - <description>removes columns from alignments</description> -</tool> -<tool id="mothur_get_groups" name="Get.groups" version="1.16.0"> - <description>Select groups</description> -</tool> -<tool id="mothur_get_group" name="Get.group" version="1.16.0"> - <description>group names from shared or from list and group</description> -</tool> -<tool id="mothur_get_lineage" name="Get.lineage" version="1.16.0"> - <description>Picks by taxon</description> -</tool> -<tool id="mothur_get_oturep" name="Get.oturep" version="1.16.0" force_history_refresh="True"> - <description>Generate a fasta with a representative sequence for each OTU</description> -</tool> -<tool id="mothur_get_otus" name="Get.otus" version="1.16.0"> - <description>Get otus containing sequences from specified groups</description> -</tool> -<tool id="mothur_get_relabund" name="Get.relabund" version="1.16.0"> - <description>Calculate the relative abundance of each otu</description> -</tool> -<tool id="mothur_get_seqs" name="Get.seqs" version="1.16.0"> - <description>Picks sequences by name</description> -</tool> -<tool id="mothur_hcluster" name="Hcluster" version="1.16.0"> - <description>Assign sequences to OTUs (Operational Taxonomic Unit)</description> -</tool> -<tool id="mothur_heatmap_bin" name="Heatmap.bin" version="1.16.0" force_history_refresh="True"> - <description>Generate a heatmap for OTUs</description> -</tool> -<tool id="mothur_heatmap_sim" name="Heatmap.sim" version="1.16.0" force_history_refresh="True"> - <description>Generate a heatmap for pariwise similarity</description> -</tool> -<tool id="mothur_indicator" name="Indicator" version="1.16.0"> - <description>Identify indicator "species" for nodes on a tree</description> -</tool> -<tool id="mothur_libshuff" name="Libshuff" version="1.16.0"> - <description>Cramer-von Mises tests communities for the same structure</description> -</tool> -<tool id="mothur_list_seqs" name="List.seqs" version="1.16.0"> - <description>Lists the names of the sequences</description> -</tool> -<tool id="mothur_make_design" name="Make Design" version="1.16.0" > - <description>Assign groups to Sets</description> -</tool> -<tool id="mothur_make_files" name="Make.group" version="1.16.0"> - <description>Make a group file</description> -</tool> -<tool id="mothur_merge_files" name="Merge.files" version="1.16.0"> - <description>Merge data</description> -</tool> -<tool id="mothur_merge_groups" name="Merge.groups" version="1.16.0" > - <description>Merge groups in a shared file</description> -</tool> -<tool id="mothur_metastats" name="Metastats" version="1.16.0"> - <description>generate principle components plot data</description> -</tool> -<tool id="mothur_nmds" name="Nmds" version="1.16.0"> - <description>generate non-metric multidimensional scaling data</description> -</tool> -<tool id="mothur_normalize_shared" name="Normalize.shared" version="1.16.0"> - <description>Normalize the number of sequences per group to a specified level</description> -</tool> -<tool id="mothur_pairwise_seqs" name="Pairwise.seqs" version="1.16.0"> - <description>calculate uncorrected pairwise distances between sequences</description> -</tool> -<tool id="mothur_parse_list" name="Parse.list" version="1.16.0" force_history_refresh="True"> - <description>Order Sequences by OTU</description> -</tool> -<tool id="mothur_parsimony" name="Parsimony" version="1.16.0"> - <description>Describes whether two or more communities have the same structure</description> -</tool> -<tool id="mothur_pca" name="Pca" version="1.16.0"> - <description>generate principle components plot data</description> -</tool> -<tool id="mothur_pcoa" name="Pcoa" version="1.16.0" > - <description>Principal Coordinate Analysis</description> -</tool> -<tool id="mothur_phylo_diversity" name="Phylo.diversity" version="1.16.0"> - <description>Alpha Diversity calculate unique branch length</description> -</tool> -<tool id="mothur_phylotype" name="Phylotype" version="1.16.0"> - <description>Assign sequences to OTUs based on taxonomy</description> -</tool> -<tool id="mothur_pre_cluster" name="Pre.cluster" version="1.16.0"> - <description>Remove sequences due to pyrosequencing errors</description> -</tool> -<tool id="mothur_rarefaction_shared" name="Rarefaction.shared" version="1.16.0"> - <description>Generate inter-sample rarefaction curves for OTUs</description> -</tool> -<tool id="mothur_rarefaction_single" name="Rarefaction.single" version="1.16.0" force_history_refresh="True"> - <description>Generate intra-sample rarefaction curves for OTUs</description> -</tool> -<tool id="mothur_read_otu" name="Read.otu" version="1.16.0" force_history_refresh="True"> - <description>Read OTU list and group to create a shared file</description> -</tool> -<tool id="mothur_remove_groups" name="Remove.groups" version="1.16.0"> - <description>Remove groups</description> -</tool> -<tool id="mothur_remove_lineage" name="Remove.lineage" version="1.16.0"> - <description>Picks by taxon</description> -</tool> -<tool id="mothur_remove_otus" name="Remove.otus" version="1.16.0"> - <description>Remove otus containing sequences from specified groups</description> -</tool> -<tool id="mothur_remove_rare" name="Remove.rare" version="1.16.0"> - <description>Remove rare OTUs</description> -</tool> -<tool id="mothur_remove_seqs" name="Remove.seqs" version="1.16.0"> - <description>Remove sequences by name</description> -</tool> -<tool id="mothur_reverse_seqs" name="Reverse.seqs" version="1.16.0"> - <description>Reverse complement the sequences</description> -</tool> -<tool id="mothur_screen_seqs" name="Screen.seqs" version="1.16.0"> - <description>Screen sequences</description> -</tool> -<tool id="mothur_sffinfo" name="Sffinfo" version="1.16.0"> - <description>Summarize the quality of sequences</description> -</tool> -<tool id="mothur_split_abund" name="Split.abund" version="1.16.0" force_history_refresh="True"> - <description>Separate sequences into rare and abundant groups</description> -</tool> -<tool id="mothur_split_groups" name="Split.groups" version="1.16.0" force_history_refresh="True"> - <description>Generates a fasta file for each group</description> -</tool> -<tool id="mothur_sub_sample" name="Sub.sample" version="1.16.0"> - <description>Create a sub sample</description> -</tool> -<tool id="mothur_summary_seqs" name="Summary.seqs" version="1.16.0"> - <description>Summarize the quality of sequences</description> -</tool> -<tool id="mothur_summary_shared" name="Summary.shared" version="1.16.0" force_history_refresh="True"> - <description>Summary of calculator values for OTUs</description> -</tool> -<tool id="mothur_summary_single" name="Summary.single" version="1.16.0" force_history_refresh="True"> - <description>Summary of calculator values for OTUs</description> -</tool> -<tool id="mothur_tree_shared" name="Tree.shared" version="1.16.0" force_history_refresh="True"> - <description>Generate a newick tree for dissimilarity among groups</description> -</tool> -<tool id="tree_vector" name="TreeVector" version="1.0"> - <description>Draw a Phylogenic Tree</description> -</tool> -<tool id="mothur_trim_seqs" name="Trim.seqs" version="1.16.0"> - <description>Trim sequences - primers, barcodes, quality</description> -</tool> -<tool id="mothur_unifrac_unweighted" name="unifrac.unweighted" version="1.16.0"> - <description>Describes whether two or more communities have the same structure</description> -</tool> -<tool id="mothur_unifrac_weighted" name="unifrac.weighted" version="1.16.0"> - <description>Describes whether two or more communities have the same structure</description> -</tool> -<tool id="mothur_unique_seqs" name="Unique.seqs" version="1.16.0"> - <description>Return unique sequences</description> -</tool> -<tool id="mothur_venn" name="Venn" version="1.16.0" force_history_refresh="True"> - <description>Generate Venn diagrams gor groups </description> -</tool>