Parses a GenBank formatted database entry
# entry is a string containing only one entry contents gb = Bio::GenBank.new(entry)
BASE COUNT (this field is obsoleted after GenBank release 138.0) -- Returns the BASE COUNT as a Hash. When the base is specified, returns count of the base as a Fixnum. The base can be one of 'a', 't', 'g', 'c', and 'o' (others).
# File lib/bio/db/genbank/genbank.rb, line 99 def basecount(base = nil) unless @data['BASE COUNT'] hash = Hash.new(0) get('BASE COUNT').scan(/(\d+) (\w)/).each do |c, b| hash[b] = c.to_i end @data['BASE COUNT'] = hash end if base base.downcase! @data['BASE COUNT'][base] else @data['BASE COUNT'] end end
# File lib/bio/db/genbank/genbank.rb, line 68 def circular; locus.circular; end
Taxonomy classfication. Returns an array of strings.
# File lib/bio/db/genbank/genbank.rb, line 142 def classification self.taxonomy.to_s.sub(/\.\z/, '').split(/\s*\;\s*/) end
# File lib/bio/db/genbank/genbank.rb, line 70 def date; locus.date; end
modified date. Returns Date object, String or nil.
# File lib/bio/db/genbank/genbank.rb, line 133 def date_modified begin Date.parse(self.date) rescue ArgumentError, TypeError, NoMethodError, NameError self.date end end
# File lib/bio/db/genbank/genbank.rb, line 69 def division; locus.division; end
FEATURES -- Iterate only for the 'CDS' portion of the Bio::Features.
# File lib/bio/db/genbank/genbank.rb, line 77 def each_cds features.each do |feature| if feature.feature == 'CDS' yield(feature) end end end
FEATURES -- Iterate only for the 'gene' portion of the Bio::Features.
# File lib/bio/db/genbank/genbank.rb, line 86 def each_gene features.each do |feature| if feature.feature == 'gene' yield(feature) end end end
# File lib/bio/db/genbank/genbank.rb, line 66 def entry_id; locus.entry_id; end
# File lib/bio/db/genbank/genbank.rb, line 67 def length; locus.length; end
Accessor methods for the contents of the LOCUS record.
# File lib/bio/db/genbank/genbank.rb, line 62 def locus @data['LOCUS'] ||= Locus.new(get('LOCUS')) end
# File lib/bio/db/genbank/genbank.rb, line 73 def natype; locus.natype; end
ORIGIN -- Returns DNA sequence in the ORIGIN record as a Bio::Sequence::NA object.
# File lib/bio/db/genbank/genbank.rb, line 118 def seq unless @data['SEQUENCE'] origin end Bio::Sequence::NA.new(@data['SEQUENCE']) end
(obsolete???) length of the sequence
# File lib/bio/db/genbank/genbank.rb, line 128 def seq_len seq.length end
# File lib/bio/db/genbank/genbank.rb, line 72 def strand; locus.strand; end
Strandedness. Returns one of 'single', 'double', 'mixed', or nil.
# File lib/bio/db/genbank/genbank.rb, line 147 def strandedness case self.strand.to_s.downcase when 'ss-'; 'single' when 'ds-'; 'double' when 'ms-'; 'mixed' else nil; end end
converts Bio::GenBank to Bio::Sequence
Arguments:
Returns |
Bio::Sequence object |
# File lib/bio/db/genbank/genbank.rb, line 159 def to_biosequence Bio::Sequence.adapter(self, Bio::Sequence::Adapter::GenBank) end
Generated with the Darkfish Rdoc Generator 2.