#summary Tutorial for multiple sequence alignments and phylogenetic methods in BioRuby -- under development! = Introduction = Tutorial for multiple sequence alignments and phylogenetic methods in !BioRuby -- under development! = Multiple Sequence Alignments = == Reading in a Multiple Sequence Alignments from a File == _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} == Writing a Multiple Sequence Alignment to a File == _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} == Calculating Multiple Sequence Alignments == !BioRuby can be used to execute a variety of multiple sequence alignment programs (such as [http://mafft.cbrc.jp/alignment/software/ MAFFT], [http://probcons.stanford.edu/ Probcons], [http://www.clustal.org/ ClustalW], [http://www.drive5.com/muscle/ Muscle]). In the following, examples for using the MAFFT and Muscle are shown. === MAFFT === {{{ #!/usr/bin/env ruby require 'bio' # Calculates the alignment using the MAFFT program on the local # machine with options '--maxiterate 1000 --localpair' # and stores the result in 'report'. options = ['--maxiterate', '1000', '--localpair'] mafft = Bio::MAFFT.new('path/to/mafft', options) report = mafft.query_align( seqs) # Accesses the actual alignment align = report.alignment # Prints each sequence to the console. report.align.each { |s| puts s.to_s } # }}} === Muscle === {{{ #!/usr/bin/env ruby require 'bio' # Calculates the alignment using the Muscle program on the local # machine with options '-quiet -maxiters 64' # and stores the result in 'report'. options = ['-quiet', '-maxiters', '64'] muscle = Bio::Muscle.new('path/to/muscle', options) report = muscle.query_align( seqs) # Accesses the actual alignment align = report.alignment # Prints each sequence to the console. report.align.each { |s| puts s.to_s } # }}} == Manipulating Multiple Sequence Alignments == It is probably a good idea to 'clean up' multiple sequence to be used for phylogenetic inference. For instance, columns with more than 50% gaps can be deleted, like so: _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} = Phylogenetic Trees = == Reading and Writing of Phylogenetic Trees == _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} Also, see: https://www.nescent.org/wg_phyloinformatics/BioRuby_PhyloXML_HowTo_documentation == Phylogenetic Inference == *Currently !BioRuby does not contain any wrappers for phylogenetic inference, I am progress of writing a RAxML wrapper followed by a wrapper for FastMA.* == Maximum Likelihood == === RAxML === _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} == Pairwise Distance Based Methods == === FastME === _... to be done_ {{{ #!/usr/bin/env ruby require 'bio' }}} = Analyzing Phylogenetic Trees = == Gene Duplication Inference == _need to further test and then import GSoC 'SDI' work..._ == Others? ==