Class | Bio::Feature |
In: |
lib/bio/feature.rb
|
Parent: | Object |
Container for the sequence annotation.
# Create a Bio::Feature object. # For example: the GenBank-formatted entry in genbank for accession M33388 # contains the following feature: # exon 1532..1799 # /gene="CYP2D6" # /note="cytochrome P450 IID6; GOO-132-127" # /number="1" feature = Bio::Feature.new('exon','1532..1799') feature.append(Bio::Feature::Qualifier.new('gene', 'CYP2D6')) feature.append(Bio::Feature::Qualifier.new('note', 'cytochrome P450 IID6')) feature.append(Bio::Feature::Qualifier.new('number', '1')) # or all in one go: feature2 = Bio::Feature.new('exon','1532..1799', [ Bio::Feature::Qualifier.new('gene', 'CYP2D6'), Bio::Feature::Qualifier.new('note', 'cytochrome P450 IID6; GOO-132-127'), Bio::Feature::Qualifier.new('number', '1') ]) # Print the feature puts feature.feature + "\t" + feature.position feature.each do |qualifier| puts "- " + qualifier.qualifier + ": " + qualifier.value end
INSD feature table definition: | www.ddbj.nig.ac.jp/FT/full_index.html |
Create a new Bio::Feature object. Arguments:
Returns: | Bio::Feature object |
# File lib/bio/feature.rb, line 52 52: def initialize(feature = '', position = '', qualifiers = []) 53: @feature, @position, @qualifiers = feature, position, qualifiers 54: end
Short cut for the Bio::Feature#to_hash[key]
# File lib/bio/feature.rb, line 112 112: def [](key) 113: self.to_hash[key] 114: end
Appends a Qualifier object to the Feature.
Arguments:
Returns: | Bio::Feature object |
# File lib/bio/feature.rb, line 75 75: def append(a) 76: @qualifiers.push(a) if a.is_a? Qualifier 77: return self 78: end
Returns a Hash constructed from qualifier objects.
# File lib/bio/feature.rb, line 92 92: def assoc 93: STDERR.puts "Bio::Feature#assoc is deprecated, use Bio::Feature#to_hash instead" if $DEBUG 94: hash = Hash.new 95: @qualifiers.each do |x| 96: hash[x.qualifier] = x.value 97: end 98: return hash 99: end
Returns a Bio::Locations object translated from the position string.
# File lib/bio/feature.rb, line 66 66: def locations 67: Locations.new(@position) 68: end