# HG changeset patch # User Jim Johnson # Date 1332967503 18000 # Node ID 09740be2bc9c6e082c68e03c397f23a31995b307 # Parent efd36aa392618ec505011e2ad4e5b4ae6e3cee25 Mothur - updates for Mothur version 1.24 diff -r efd36aa39261 -r 09740be2bc9c mothur/README --- a/mothur/README Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/README Wed Mar 28 15:45:03 2012 -0500 @@ -2,8 +2,8 @@ (The environment variable MOTHUR_MAX_PROCESSORS can be used to limit the number of cpu processors used be mothur commands) -Install mothur v.1.22.0 on your galaxy system so galaxy can execute the mothur command - ( This version of wrappers is designed for Mothur version 1.22 - it may work on later versions ) +Install mothur v.1.24.1 on your galaxy system so galaxy can execute the mothur command + ( This version of wrappers is designed for Mothur version 1.24 - it may work on later versions ) http://www.mothur.org/wiki/Download_mothur http://www.mothur.org/wiki/Installation ( This Galaxy Mothur wrapper will invoke Mothur in command line mode: http://www.mothur.org/wiki/Command_line_mode ) @@ -15,6 +15,14 @@ Install in galaxy: tool-data/shared/jars/TreeVector.jar Install reference data from silva and greengenes + RDP reference file (modified for mothur): + http://www.mothur.org/wiki/RDP_reference_files + - 16S rRNA reference (RDP): A collection of 9,662 bacterial and 384 archaeal 16S rRNA gene sequences with an improved taxonomy compared to version 6. + http://www.mothur.org/w/images/2/29/Trainset7_112011.rdp.zip + - 16S rRNA reference (PDS): The RDP reference with three sequences reversed and 119 mitochondrial 16S rRNA gene sequences added as members of the Rickettsiales + http://www.mothur.org/w/images/4/4a/Trainset7_112011.pds.zip + - 28S rRNA reference (RDP): A collection of 8506 reference 28S rRNA gene sequences from the Fungi that were curated by the Kuske lab + http://www.mothur.org/w/images/3/36/FungiLSU_train_v7.zip Silva reference: http://www.mothur.org/wiki/Silva_reference_files - Bacterial references (14,956 sequences) @@ -79,11 +87,19 @@ /project/db/galaxy/mothur/Silva.eukarya.zip /project/db/galaxy/mothur/Gg_ss_map.zip /project/db/galaxy/mothur/core_set_aligned.imputed.fasta + /project/db/galaxy/mothur/RDP/FungiLSU_train_1400bp_8506_mod.fasta + /project/db/galaxy/mothur/RDP/FungiLSU_train_1400bp_8506_mod.tax + /project/db/galaxy/mothur/RDP/trainset6_032010.rdp.fasta + /project/db/galaxy/mothur/RDP/trainset6_032010.rdp.tax + /project/db/galaxy/mothur/RDP/trainset7_112011.pds.fasta + /project/db/galaxy/mothur/RDP/trainset7_112011.pds.tax + /project/db/galaxy/mothur/RDP/trainset7_112011.rdp.fasta + /project/db/galaxy/mothur/RDP/trainset7_112011.rdp.tax -Add tool-data: (contains pointers to silva and greengenes reference data) + +Add tool-data: (contains pointers to silva, greengenes, and RDP reference data) tool-data/mothur_aligndb.loc - tool-data/mothur_calulators.loc tool-data/mothur_map.loc tool-data/mothur_taxonomy.loc tool-data/shared/jars/TreeVector.jar diff -r efd36aa39261 -r 09740be2bc9c mothur/tool-data/mothur_aligndb.loc.sample --- a/mothur/tool-data/mothur_aligndb.loc.sample Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tool-data/mothur_aligndb.loc.sample Wed Mar 28 15:45:03 2012 -0500 @@ -6,11 +6,14 @@ # # # -greengenes /project/db/galaxy/mothur/core_set_aligned.imputed.fasta -silva archaea /project/db/galaxy/mothur/Silva.archaea/silva.archaea.fasta -silva bacteria /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.fasta -silva eukarya /project/db/galaxy/mothur/silva.eukarya.fasta -silva archaea nogap /project/db/galaxy/mothur/Silva.archaea/nogap.archaea.fasta -silva bacteria nogap /project/db/galaxy/mothur/silva.bacteria/nogap.bacteria.fasta -silva eukarya nogap /project/db/galaxy/mothur/nogap.eukarya.fasta - +#greengenes /project/db/galaxy/mothur/core_set_aligned.imputed.fasta +#silva archaea /project/db/galaxy/mothur/Silva.archaea/silva.archaea.fasta +#silva bacteria /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.fasta +#silva eukarya /project/db/galaxy/mothur/silva.eukarya.fasta +#silva archaea nogap /project/db/galaxy/mothur/Silva.archaea/nogap.archaea.fasta +#silva bacteria nogap /project/db/galaxy/mothur/silva.bacteria/nogap.bacteria.fasta +#silva eukarya nogap /project/db/galaxy/mothur/nogap.eukarya.fasta +#FungiLSU_train_1400bp_8506_mod.fasta /project/db/galaxy/mothur/RDP/FungiLSU_train_1400bp_8506_mod.fasta +#trainset6_032010.rdp.fasta /project/db/galaxy/mothur/RDP/trainset6_032010.rdp.fasta +#trainset7_112011.pds.fasta /project/db/galaxy/mothur/RDP/trainset7_112011.pds.fasta +#trainset7_112011.rdp.fasta /project/db/galaxy/mothur/RDP/trainset7_112011.rdp.fasta diff -r efd36aa39261 -r 09740be2bc9c mothur/tool-data/mothur_lookup.loc.sample --- a/mothur/tool-data/mothur_lookup.loc.sample Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tool-data/mothur_lookup.loc.sample Wed Mar 28 15:45:03 2012 -0500 @@ -6,8 +6,6 @@ # # # -GS20 /project/db/galaxy/mothur/lookup/LookUp_GS20.pat -GSFLX /project/db/galaxy/mothur/lookup/LookUp_GSFLX.pat -Titanium /project/db/galaxy/mothur/lookup/LookUp_Titanium.pat - - +#GS20 /project/db/galaxy/mothur/lookup/LookUp_GS20.pat +#GSFLX /project/db/galaxy/mothur/lookup/LookUp_GSFLX.pat +#Titanium /project/db/galaxy/mothur/lookup/LookUp_Titanium.pat diff -r efd36aa39261 -r 09740be2bc9c mothur/tool-data/mothur_map.loc.sample --- a/mothur/tool-data/mothur_map.loc.sample Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tool-data/mothur_map.loc.sample Wed Mar 28 15:45:03 2012 -0500 @@ -6,5 +6,5 @@ # # # -greengenes /project/db/galaxy/mothur/gg.ss.map -silva /project/db/galaxy/mothur/silva.ss.map +#greengenes /project/db/galaxy/mothur/gg.ss.map +#silva /project/db/galaxy/mothur/silva.ss.map diff -r efd36aa39261 -r 09740be2bc9c mothur/tool-data/mothur_taxonomy.loc.sample --- a/mothur/tool-data/mothur_taxonomy.loc.sample Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tool-data/mothur_taxonomy.loc.sample Wed Mar 28 15:45:03 2012 -0500 @@ -6,15 +6,19 @@ # # # -archaea.gg /project/db/galaxy/mothur/Silva.archaea/silva.archaea.gg.tax -archaea.silva /project/db/galaxy/mothur/Silva.archaea/silva.archaea.silva.tax -archaea.rdp /project/db/galaxy/mothur/Silva.archaea/silva.archaea.rdp.tax -archaea.ncbi /project/db/galaxy/mothur/Silva.archaea/silva.archaea.ncbi.tax -bacteria.gg /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.gg.tax -bacteria.silva /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.silva.tax -bacteria.ncbi /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.ncbi.tax -bacteria.rdp /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.rdp.tax -bacteria.rdp6 /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.rdp6.tax -eukarya.silva /project/db/galaxy/mothur/silva.eukarya.silva.tax -eukarya.ncbi /project/db/galaxy/mothur/silva.eukarya.ncbi.tax - +#archaea.gg /project/db/galaxy/mothur/Silva.archaea/silva.archaea.gg.tax +#archaea.silva /project/db/galaxy/mothur/Silva.archaea/silva.archaea.silva.tax +#archaea.rdp /project/db/galaxy/mothur/Silva.archaea/silva.archaea.rdp.tax +#archaea.ncbi /project/db/galaxy/mothur/Silva.archaea/silva.archaea.ncbi.tax +#bacteria.gg /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.gg.tax +#bacteria.silva /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.silva.tax +#bacteria.ncbi /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.ncbi.tax +#bacteria.rdp /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.rdp.tax +#bacteria.rdp6 /project/db/galaxy/mothur/silva.bacteria/silva.bacteria.rdp6.tax +#eukarya.silva /project/db/galaxy/mothur/silva.eukarya.silva.tax +#eukarya.ncbi /project/db/galaxy/mothur/silva.eukarya.ncbi.tax +#trainset6_032010.rdp.tax /project/db/galaxy/mothur/RDP/trainset6_032010.rdp.tax +#trainset7_112011.pds.tax /project/db/galaxy/mothur/RDP/trainset7_112011.pds.tax +#trainset7_112011.rdp.tax /project/db/galaxy/mothur/RDP/trainset7_112011.rdp.tax +#FungiLSU_train_1400bp_8506_mod.tax /project/db/galaxy/mothur/RDP/FungiLSU_train_1400bp_8506_mod.tax +# diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/classify.tree.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/classify.tree.xml Wed Mar 28 15:45:03 2012 -0500 @@ -0,0 +1,70 @@ + + Get a consensus taxonomy for each node on a tree + + mothur_wrapper.py + --cmd='classify.tree' + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.taxonomy\.tre$:'$out_tree,'^\S+\.taxonomy\.summary$:'$summary + --outputdir='$logfile.extra_files_path' + --taxonomy=$taxonomy + --tree=$tree + #if $name.__str__ != "None" and len($name.__str__) > 0: + --name='$name' + #end if + #if $group.__str__ != "None" and len($group.__str__) > 0: + --group=$group + #end if + + --name=$names + + + + + + + + + + + + + + + + + + mothur + + + + +**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 classify.tree_ command is used to get a consensus taxonomy for each node on a tree. +Input is a taxonomy_ and a tree_ with optional name_ or group_ reference. +The output is a tree_ and a summary.. + + TreeNode NumRep Taxonomy + 243 2 Bacteria(100);"Firmicutes"(100);"Clostridia"(100);Clostridiales(100);"Ruminococcaceae"(100);Faecalibacterium(100); + 244 3 Bacteria(100);"Firmicutes"(100);"Clostridia"(100);Clostridiales(100);"Ruminococcaceae"(100);Faecalibacterium(100); + 245 4 Bacteria(100);"Firmicutes"(100);"Clostridia"(100);Clostridiales(100);"Ruminococcaceae"(100);Faecalibacterium(100); + ... + + +.. _taxonomy: http://www.mothur.org/wiki/Taxonomy_outline +.. _tree: http://evolution.genetics.washington.edu/phylip/newicktree.html +.. _name: http://www.mothur.org/wiki/Name_file +.. _group: http://www.mothur.org/wiki/Group_file +.. _classify.tree: http://www.mothur.org/wiki/Classify.tree + + + + diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/fastq.info.xml --- a/mothur/tools/mothur/fastq.info.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/fastq.info.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + Convert fastq to fasta and quality mothur_wrapper.py @@ -9,11 +9,17 @@ + + - - + + fasta == True + + + qfile == True + mothur diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/get.groups.xml --- a/mothur/tools/mothur/get.groups.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/get.groups.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + Select groups mothur_wrapper.py @@ -38,6 +38,10 @@ --taxonomy=$taxonomy_in #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1\\.pick\\.\2',$os.path.basename($taxonomy_in.__str__)) + ":'" + $taxonomy_out.__str__] #end if + #if $design_in.__str__ != "None" and len($design_in.__str__) > 0: + --design=$design_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.*\\.pick\\.\2',$os.path.basename($design_in.__str__)) + ":'" + $design_out.__str__] + #end if --result=#echo ','.join($results) @@ -65,6 +69,8 @@ + @@ -85,6 +91,9 @@ taxonomy_in != None + + design_in != None + mothur diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/merge.groups.xml --- a/mothur/tools/mothur/merge.groups.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/merge.groups.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,12 +1,19 @@ - + Merge groups in a shared file mothur_wrapper.py --cmd='merge.groups' ## 98_sq_phylip_amazon.fn.merge.shared - --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.merge\.\S+$:'$shared + #set results = ["'^mothur.\S+\.logfile$:'" + $logfile.__str__] --outputdir='$logfile.extra_files_path' - --shared=$otu + #if $otu.__str__ != "None" and len($otu.__str__) > 0: + --shared=$otu + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.merge.\2',$os.path.basename($otu.__str__)) + ":'" + $merge_shared.__str__] + #end if + #if $group.__str__ != "None" and len($group.__str__) > 0: + --group=$group + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.merge.\2',$os.path.basename($group.__str__)) + ":'" + $merge_group.__str__] + #end if #if $design.source == 'hist': --design=$design_dataset #else: @@ -18,9 +25,11 @@ #if $label.__str__ != "None" and len($label.__str__) > 0: --label='$label' #end if + --result=#echo ','.join($results) - + + @@ -77,7 +86,12 @@ - + + otu != None + + + groups != None + mothur diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/mothur_wrapper.py --- a/mothur/tools/mothur/mothur_wrapper.py Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/mothur_wrapper.py Wed Mar 28 15:45:03 2012 -0500 @@ -4,7 +4,7 @@ http://www.mothur.org/ Supports mothur version -mothur v.1.23.0 +mothur v.1.24.0 Class encapsulating Mothur galaxy tool. Expect each invocation to include: @@ -192,6 +192,7 @@ 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','reference','taxonomy'],'optional' : ['name','search','ksize','method','match','mismatch','gapopen','gapextend','numwanted','probs','save','processors']}) + cmd_dict['classify.tree'] = dict({'required' : ['taxonomy','tree'],'optional' : ['name','group','cutoff']}) #clear.memory ## not needed in galaxy framework 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' : [['phylip','column']] , 'optional' : ['name','method','cutoff','hard','precision','sim','showabund','timing']}) @@ -209,10 +210,10 @@ 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' : ['shared'], 'optional' : ['calc','label','groups','output','processors']}) - cmd_dict['fastq.info'] = dict({'required' : ['fastq'], 'optional' : []}) + cmd_dict['fastq.info'] = dict({'required' : ['fastq'], 'optional' : ['fasta','qfile']}) cmd_dict['filter.seqs'] = dict({'required' : ['fasta'], 'optional' : ['vertical','trump','soft','hard','processors']}) cmd_dict['get.group'] = dict({'required' : ['shared'], 'optional' : []}) - cmd_dict['get.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','shared','taxonomy']}) + cmd_dict['get.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','shared','taxonomy','design']}) cmd_dict['get.lineage'] = dict({'required' : ['taxonomy','taxon'],'optional' : ['fasta','name','group','list','alignreport','dups']}) cmd_dict['get.otulist'] = dict({'required' : ['list'], 'optional' : ['label','sort']}) cmd_dict['get.oturep'] = dict({'required' : ['list',['phylip','column']], 'optional' : ['fasta','name','label','group','groups','sorted','precision','cutoff','large','weighted']}) @@ -234,10 +235,11 @@ cmd_dict['make.shared'] = dict({'required' : ['list','group'], 'optional' : ['label','groups']}) 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['merge.groups'] = dict({'required' : [['shared','group'],'design'], 'optional' : ['groups', 'label']}) 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' : [['shared','relabund']], 'optional' : ['label','method','norm','groups','makerelabund']}) + cmd_dict['otu.association'] = dict({'required' : [['shared','relabund']], 'optional' : ['groups', 'label','method']}) 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']}) @@ -249,24 +251,21 @@ cmd_dict['pre.cluster'] = dict({'required' : ['fasta'], 'optional' : ['name','diffs','group','processors']}) cmd_dict['rarefaction.shared'] = dict({'required' : ['shared'], 'optional' : ['calc','label','iters','groups','jumble']}) cmd_dict['rarefaction.single'] = dict({'required' : [['list', 'sabund', 'rabund', 'shared']], 'optional' : ['calc','abund','iters','label','freq','processors']}) - cmd_dict['remove.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','shared','taxonomy']}) + cmd_dict['remove.groups'] = dict({'required' : ['group'], 'optional' : ['groups','accnos','fasta','name','list','shared','taxonomy','design']}) 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.seqs'] = dict({'required' : ['accnos',['fasta','qfile','name','group','list','alignreport','taxonomy']], 'optional' : ['dups']}) cmd_dict['reverse.seqs'] = dict({'required' : ['fasta']}) - cmd_dict['screen.seqs'] = dict({'required' : ['fasta'], 'optional' : ['start','end','maxambig','maxhomop','minlength','maxlength','criteria','optimize','name','group','alignreport'''taxonomy','processors']}) + cmd_dict['screen.seqs'] = dict({'required' : ['fasta'], 'optional' : ['start','end','maxambig','maxhomop','minlength','maxlength','criteria','optimize','name','group','alignreport','taxonomy','processors']}) cmd_dict['sens.spec'] = dict({'required' : ['list',['column','phylip']] , 'optional' : ['label','cutoff','hard','precision']}) - cmd_dict['seq.error'] = dict({'required' : ['fasta','reference'] , 'optional' : ['name','qfile','report','ignorechimeras','threshold','processors']}) - cmd_dict['sffinfo'] = dict({'required' : [['sff','sfftxt']], 'optional' : ['fasta','qfile','trim','sfftxt','flow','accnos']}) - cmd_dict['shhh.flows'] = dict({'required' : [['flow','files']], 'optional' : ['lookup','maxiter','mindelta','cutoff','sigma','order','processors']}) cmd_dict['shhh.seqs'] = dict({'required' : [['fasta','files']], 'optional' : ['group','sigma','processors']}) - cmd_dict['split.abund'] = dict({'required' : ['fasta',['name','list']], 'optional' : ['cutoff','group','groups','label','accnos']}) cmd_dict['split.groups'] = dict({'required' : ['fasta','group'], 'optional' : ['name','groups']}) + cmd_dict['sort.seqs'] = dict({'required' : [['fasta','qfile','name','group','flow','taxonomy']], 'optional' : ['accnos','large']}) cmd_dict['sub.sample'] = dict({'required' : [['fasta','list','sabund','rabund','shared']], 'optional' : ['name','group','groups','label','size','persample']}) cmd_dict['summary.qual'] = dict({'required' : ['qfile'], 'optional' : ['name']}) cmd_dict['summary.seqs'] = dict({'required' : ['fasta'], 'optional' : ['name','processors']}) @@ -274,8 +273,8 @@ cmd_dict['summary.single'] = dict({'required' : [['list','sabund','rabund','shared']], 'optional' : ['calc','abund','size','label','groupmode']}) cmd_dict['summary.tax'] = dict({'required' : ['taxonomy'], 'optional' : ['name','group','reftaxonomy']}) cmd_dict['tree.shared'] = dict({'required' : [['shared','phylip','column']], 'optional' : ['name','groups','calc','cutoff','precision','label']}) - cmd_dict['trim.flows'] = dict({'required' : ['flow'], 'optional' : ['oligos','bdiffs','pdiffs','tdiffs','minflows','maxflows','fasta','signal','noise','maxhomop','order','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','processors']}) + cmd_dict['trim.flows'] = dict({'required' : ['flow'], 'optional' : ['oligos','bdiffs','pdiffs','tdiffs','ldiffs','sdiffs','minflows','maxflows','fasta','signal','noise','maxhomop','order','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','ldiffs','sdiffs','keepforward','allfiles','keepfirst','removelast','processors']}) cmd_dict['unifrac.unweighted'] = dict({'required' : ['tree'], 'optional' : ['name','group','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' : ['name']}) @@ -337,9 +336,12 @@ parser.add_option( '--oligos', dest='oligos', help='The oligos option takes a file that can contain the sequences of the forward and reverse primers and barcodes and their sample identifier.' ) parser.add_option( '--bdiffs', dest='bdiffs', type="int", help='Number of barcode differences to allow' ) parser.add_option( '--pdiffs', dest='pdiffs', type="int", help='Number of primer differences to allow' ) + parser.add_option( '--ldiffs', dest='ldiffs', type="int", help='Number of linker sequence differences to allow' ) + parser.add_option( '--sdiffs', dest='sdiffs', type="int", help='Number of spacer sequence differences to allow' ) parser.add_option( '--tdiffs', dest='tdiffs', type="int", help='Total number of barcode and primer differences to allow' ) parser.add_option( '--diffs', dest='diffs', type="int", help='Number of mismatched bases to allow between sequences in a group' ) parser.add_option( '--allfiles', dest='allfiles', help='T - generate fasta and group for each barcode' ) + parser.add_option( '--keepforward', dest='keepforward', help='T - keep primer' ) parser.add_option( '--name', dest='name', help='A file containing a 2 column table: name, and comma separated list of represetatives' ) parser.add_option( '--accnos', dest='accnos', help='A file containing a list of names' ) parser.add_option( '--groups', dest='groups', help='pairwise group labels' ) diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/otu.association.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/otu.association.xml Wed Mar 28 15:45:03 2012 -0500 @@ -0,0 +1,75 @@ + + Calculate the correlation coefficient for the otus + + mothur_wrapper.py + --cmd='otu.association' + --result='^mothur.\S+\.logfile$:'$logfile,'^\S+\.norm\.shared$:'$shared + --outputdir='$logfile.extra_files_path' + --datasetid='$logfile.id' --new_file_path='$__new_file_path__' + --new_datasets='^\S+?\.otu.corr$:$tabular' + #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('relabund').__class__): + --relabund=$otu + #end if + #if $label.__str__ != "None" and len($label.__str__) > 0: + --label='$label' + #end if + #if $groups.__str__ != "None" and len($groups.__str__) > 0: + --groups=$groups + #end if + #if $method.__str__ != "None" and len($method.__str__) > 0: + --method=$method + #end if + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + mothur + + + + +**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 otu.association_ command calculates the correlation coefficient for the otus in a shared_ or relabund_ file. + +.. _shared: http://www.mothur.org/wiki/Shared_file +.. _relabund: http://www.mothur.org/wiki/Get.relabund +.. _otu.association: http://www.mothur.org/wiki/Otu.association + + + diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/remove.groups.xml --- a/mothur/tools/mothur/remove.groups.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/remove.groups.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + Remove groups from groups,fasta,names,list,taxonomy mothur_wrapper.py @@ -38,6 +38,10 @@ --taxonomy=$taxonomy_in #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1\\.pick\\.\2',$os.path.basename($taxonomy_in.__str__)) + ":'" + $taxonomy_out.__str__] #end if + #if $design_in.__str__ != "None" and len($design_in.__str__) > 0: + --design=$design_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.*\\.pick\\.\2',$os.path.basename($design_in.__str__)) + ":'" + $design_out.__str__] + #end if --result=#echo ','.join($results) @@ -65,6 +69,8 @@ + @@ -85,6 +91,9 @@ taxonomy_in != None + + design_in != None + mothur diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/sffinfo.xml --- a/mothur/tools/mothur/sffinfo.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/sffinfo.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + Summarize the quality of sequences mothur_wrapper.py @@ -33,7 +33,7 @@ - + diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/sort.seqs.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mothur/tools/mothur/sort.seqs.xml Wed Mar 28 15:45:03 2012 -0500 @@ -0,0 +1,94 @@ + + put sequences in different files in the same order + + mothur_wrapper.py + #import re, os.path + #set results = ["'^mothur.\S+\.logfile$:'" + $logfile.__str__] + ## adds .sorted before the last extension to the input file (except group has .pick) + --cmd='sort.seqs' + --outputdir='$logfile.extra_files_path' + #if $fasta_in.__str__ != "None" and len($fasta_in.__str__) > 0: + --fasta=$fasta_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.sorted.\2',$os.path.basename($fasta_in.__str__)) + ":'" + $fasta_out.__str__] + #end if + #if $qfile_in.__str__ != "None" and len($qfile_in.__str__) > 0: + --qfile=$qfile_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.sorted.\2',$os.path.basename($qfile_in.__str__)) + ":'" + $qfile_out.__str__] + #end if + #if $flow_in.__str__ != "None" and len($flow_in.__str__) > 0: + --flow=$flow_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.sorted.\2',$os.path.basename($flow_in.__str__)) + ":'" + $flow_out.__str__] + #end if + #if $name_in.__str__ != "None" and len($name_in.__str__) > 0: + --name=$name_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.sorted.\2',$os.path.basename($name_in.__str__)) + ":'" + $name_out.__str__] + #end if + #if $group_in.__str__ != "None" and len($group_in.__str__) > 0: + --group=$group_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.pick.\2',$os.path.basename($group_in.__str__)) + ":'" + $group_out.__str__] + #end if + #if $taxonomy_in.__str__ != "None" and len($taxonomy_in.__str__) > 0: + --taxonomy=$taxonomy_in + #set results = $results + ["'" + $re.sub(r'(^.*)\.(.*?)',r'\1.sorted.\2',$os.path.basename($taxonomy_in.__str__)) + ":'" + $taxonomy_out.__str__] + #end if + #if $accnos.__str__ != "None" and len($accnos.__str__) > 0: + --accnos=$accnos + #end if + $large + --result=#echo ','.join($results) + + + + + + + + + + + + + + + fasta_in != None + + + qfile_in != None + + + flow_in != None + + + group_in != None + + + name_in != None + + + taxonomy_in != None + + + + mothur + + + + +**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 sort.seqs_ command puts sequences from a fasta, name, group, quality, flow or taxonomy file in the same order. +You can provide an accnos file to indicate the order you want, otherwise mothur will use the order of the first file it reads. + +.. _sort.seqs: http://www.mothur.org/wiki/Sort.seqs + + + + diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/trim.flows.xml --- a/mothur/tools/mothur/trim.flows.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/trim.flows.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + partition by barcode, trim to length, cull by lenght and mismatches mothur_wrapper.py @@ -29,15 +29,21 @@ #end if #if $oligo.add == "yes": --oligos=$oligo.oligos - #if int($oligo.bdiffs.__str__) > 0: + #if $oligo.bdiffs.__str__ != '' and int($oligo.bdiffs.__str__) > 0: --bdiffs=$oligo.bdiffs #end if - #if int($oligo.pdiffs.__str__) > 0: + #if $oligo.pdiffs.__str__ != '' and int($oligo.pdiffs.__str__) > 0: --pdiffs=$oligo.pdiffs #end if - #if int($oligo.tdiffs.__str__) > 0: + #if $oligo.tdiffs.__str__ != '' and int($oligo.tdiffs.__str__) > 0: --tdiffs=$oligo.tdiffs #end if + #if $oligo.ldiffs.__str__ != '' and int($oligo.ldiffs.__str__) > 0: + --ldiffs=$oligo.ldiffs + #end if + #if $oligo.sdiffs.__str__ != '' and int($oligo.sdiffs.__str__) > 0: + --sdiffs=$oligo.sdiffs + #end if --datasetid='$logfile.id' --new_file_path='$__new_file_path__' --new_datasets='^\S+?\.(\S+\.flow)$:sff.flow' #end if @@ -65,7 +71,13 @@ - + + + + + + + diff -r efd36aa39261 -r 09740be2bc9c mothur/tools/mothur/trim.seqs.xml --- a/mothur/tools/mothur/trim.seqs.xml Thu Jan 19 11:27:37 2012 -0600 +++ b/mothur/tools/mothur/trim.seqs.xml Wed Mar 28 15:45:03 2012 -0500 @@ -1,4 +1,4 @@ - + Trim sequences - primers, barcodes, quality mothur_wrapper.py @@ -25,17 +25,24 @@ #end if #if $oligo.add == "yes": --oligos=$oligo.oligos - #if int($oligo.bdiffs.__str__) > 0: + #if $oligo.bdiffs.__str__ != '' and int($oligo.bdiffs.__str__) > 0: --bdiffs=$oligo.bdiffs #end if - #if int($oligo.pdiffs.__str__) > 0: + #if $oligo.pdiffs.__str__ != '' and int($oligo.pdiffs.__str__) > 0: --pdiffs=$oligo.pdiffs #end if - #if int($oligo.tdiffs.__str__) > 0: + #if $oligo.tdiffs.__str__ != '' and int($oligo.tdiffs.__str__) > 0: --tdiffs=$oligo.tdiffs #end if - $oligo.allfiles - #if $oligo.allfiles.value: + #if $oligo.ldiffs.__str__ != '' and int($oligo.ldiffs.__str__) > 0: + --ldiffs=$oligo.ldiffs + #end if + #if $oligo.sdiffs.__str__ != '' and int($oligo.sdiffs.__str__) > 0: + --sdiffs=$oligo.sdiffs + #end if + $oligo.keepforward + $oligo.allvalues + #if $oligo.allfiles == True: --datasetid='$logfile.id' --new_file_path='$__new_file_path__' --new_datasets='^\S+?\.(\S+\.fasta)$:${fasta.ext}','^\S+?\.(\S+\.groups)$:groups' #end if @@ -88,9 +95,22 @@ - - - + + + + + + + + + + + + + + + +