Bio::MAFFT is a wrapper class to execute MAFFT. MAFFT is a very fast multiple sequence alignment software.
Though Bio::MAFFT class currently supports only MAFFT version 3, you can use MAFFT version 5 because the class is a wrapper class.
Shows last command-line string. Returns nil or an array of String. Note that filenames described in the command-line may already be removed because they are temporary files.
Shows latest raw alignment result. Return a string. (Changed in bioruby-1.1.0). Compatibility note: If you want an array of Bio::FastaFormat instances, you should use report.data instead.
Shows last alignment result (instance of Bio::MAFFT::Report class) performed by the factory.
Creates a new alignment factory. When n is a number (1,2,3, …), performs ‘fftns n’. When n is :i or ‘i’, performs ‘fftnsi’.
# File lib/bio/appl/mafft.rb, line 47 def self.fftns(n = nil) opt = [] if n.to_s == 'i' then self.new2(nil, 'fftnsi', *opt) else opt << n.to_s if n self.new2(nil, 'fftns', *opt) end end
Creates a new alignment factory. Performs ‘fftnsi’.
# File lib/bio/appl/mafft.rb, line 59 def self.fftnsi self.new2(nil, 'fftnsi') end
Creates a new alignment factory. program is the name of the program. opt is options of the program.
# File lib/bio/appl/mafft.rb, line 108 def initialize(program = 'mafft', opt = []) @program = program @options = opt @command = nil @output = nil @report = nil @data_stdout = nil @exit_status = nil end
Creates a new alignment factory. dir is the path of the MAFFT program. prog is the name of the program. opt is options of the program.
# File lib/bio/appl/mafft.rb, line 98 def self.new2(dir, prog, *opt) if dir then prog = File.join(dir, prog) end self.new(prog, opt) end
Creates a new alignment factory. Performs ‘nwns –all-positive n’ or ‘nwnsi –all-positive’. Same as Bio::MAFFT.nwap(n, true).
# File lib/bio/appl/mafft.rb, line 90 def self.nwap(n = nil) self.nwns(n, true) end
Creates a new alignment factory. When n is a number (1,2,3, …), performs ‘nwns n’. When n is :i or ‘i’, performs ‘nwnsi’. In both case, if all_positive is true, add option ‘–all-positive’.
# File lib/bio/appl/mafft.rb, line 67 def self.nwns(n = nil, ap = nil) opt = [] opt << '--all-positive' if ap if n.to_s == 'i' then self.new2(nil, 'nwnsi', *opt) else opt << n.to_s if n self.new2(nil, 'nwns', *opt) end end
Creates a new alignment factory. Performs ‘nwnsi’. If all_positive is true, add option ‘–all-positive’.
# File lib/bio/appl/mafft.rb, line 81 def self.nwnsi(all_positive = nil) opt = [] opt << '--all-positive' if all_positive self.new2(nil, 'nwnsi', *opt) end
log is deprecated (no replacement) and returns empty string.
# File lib/bio/appl/mafft.rb, line 141 def log warn "Bio::MAFFT#log is deprecated (no replacement) and returns empty string." '' end
option is deprecated. Instead, please use options.
# File lib/bio/appl/mafft.rb, line 125 def option warn "Bio::MAFFT#option is deprecated. Please use options." options end
Executes the program. If seqs is not nil, perform alignment for seqs. If seqs is nil, simply executes the program.
Compatibility note: When seqs is nil, returns true if the program exits normally, and returns false if the program exits abnormally.
# File lib/bio/appl/mafft.rb, line 179 def query(seqs) if seqs then query_align(seqs) else exec_local(@options) @exit_status.exitstatus == 0 ? true : false end end
Note that this method will be renamed to query_alignment.
Performs alignment for seqs. seqs should be Bio::Alignment or Array of sequences or nil.
Compatibility Note: arg is deprecated and ignored.
# File lib/bio/appl/mafft.rb, line 194 def query_align(seqs, *arg) if arg.size > 0 then warn '2nd and other arguments of Bio::MAFFT#query_align is ignored' end unless seqs.is_a?(Bio::Alignment) seqs = Bio::Alignment.new(seqs) end query_string(seqs.output_fasta(:width => 70)) end
Performs alignment for seqs. seqs should be Bio::Alignment or Array of sequences or nil.
# File lib/bio/appl/mafft.rb, line 206 def query_alignment(seqs) query_align(seqs) end
Performs alignment of sequences in the file named fn.
Compatibility Note: 2nd argument (seqtype) is deprecated and ignored.
# File lib/bio/appl/mafft.rb, line 232 def query_by_filename(fn, *arg) if arg.size > 0 then warn '2nd argument of Bio::MAFFT#query_filename is ignored' end opt = @options + [ fn ] exec_local(opt) @report = Report.new(@output) @report end
Performs alignment for str. Str should be a string that can be recognized by the program.
Compatibility Note: arg is deprecated and ignored.
# File lib/bio/appl/mafft.rb, line 214 def query_string(str, *arg) if arg.size > 0 then warn '2nd and other arguments of Bio::MAFFT#query_string is ignored' end begin tf_in = Tempfile.open('align') tf_in.print str ensure tf_in.close(false) end r = query_by_filename(tf_in.path, *arg) tf_in.close(true) r end
Generated with the Darkfish Rdoc Generator 2.