Parent

Class/Module Index [+]

Quicksearch

Bio::Ensembl

Description

An Ensembl Genome Browser client class.

Examples

human = Bio::Ensembl.new('Homo_sapiens')
seq = human.exportview(1, 1000, 100000)
gff = human.exportview(1, 1000, 100000, ['gene'])

mouse = Bio::Ensembl.new('Mus_musculus')
seq = mouse.exportview(1, 1000, 100000)
gff = mouse.exportview(1, 1000, 100000, ['gene', 'variation', 'genscan'])

rice = Bio::Enesmbl.new('Oryza_sativa', 'http://www.gramene.org')
seq = rice.exportview(1, 1000, 100000)

References


Codes for backward-compatibility.

Attributes

organism[R]

Organism name. (ex. 'Homo_sapiens').

server[R]

Server URL (ex. 'www.ensembl.org')

Public Class Methods

human() click to toggle source
# File lib/bio/io/ensembl.rb, line 79
def self.human
  self.new("Homo_sapiens")
end
mouse() click to toggle source
# File lib/bio/io/ensembl.rb, line 83
def self.mouse
  self.new("Mus_musculus")
end
new(organism, server = nil) click to toggle source
# File lib/bio/io/ensembl.rb, line 73
def initialize(organism, server = nil)
  @server = server || ENSEMBL_URL
  @organism = organism
  @uri = [ @server.chomp('/'), @organism ].join('/')
end
server_uri(uri = nil) click to toggle source
# File lib/bio/io/ensembl.rb, line 204
def self.server_uri(uri = nil)
  if uri
    @uri = uri
  else
    @uri || EBIServerURI
  end
end

Public Instance Methods

exportview(*args) click to toggle source

Ensembl ExportView Client.

Retrieve genomic sequence/features from Ensembl ExportView in plain text. Ensembl ExportView exports genomic data (sequence and features) in several file formats including fasta, GFF and tab.

Examples

human = Bio::Ensembl.new('Homo_sapiens')
  or
human = Bio::Ensembl.human

# Genomic sequence in Fasta format
human.exportview(:seq_region_name => 1, 
                 :anchor1 => 1149206, :anchor2 => 1149229)
human.exportview(1, 1149206, 1149229)

# Feature in GFF
human.exportview(:seq_region_name => 1, 
                 :anchor1 => 1149206, :anchor2 => 1150000, 
                 :options => ['similarity', 'repeat', 
                              'genscan', 'variation', 'gene'])
human.exportview(1, 1149206, 1150000, ['variation', 'gene'])

Feature in TAB

human.exportview(:seq_region_name => 1, 
                 :anchor1 => 1149206, :anchor2 => 1150000, 
                 :options => ['similarity', 'repeat', 
                              'genscan', 'variation', 'gene'],
                 :format => 'tab')

Arguments

Bio::Ensembl#exportview method allow both orderd arguments and named arguments. (Note: mandatory arguments are marked by '*').

Orderd Arguments

  1. seq_region_name - Chromosome number (*)

  2. anchor1 - From coordination (*)

  3. anchor2 - To coordination (*)

  4. options - Features to export (in :format => 'gff' or 'tab')

    ['similarity', 'repeat', 'genscan', 'variation', 
     'gene']

Named Arguments

  • :seq_region_name - Chromosome number (*)

  • :anchor1 - From coordination (*)

  • :anchor2 - To coordination (*)

  • :type1 - From coordination type ['bp', ]

  • :type2 - To coordination type ['bp', ]

  • :upstream - Bp upstream

  • :downstream - Bp downstream

  • :format - File format ['fasta', 'gff', 'tab']

  • :options - Features to export (for :format => 'gff' or 'tab')

    ['similarity', 'repeat', 'genscan', 'variation', 
     'gene']
# File lib/bio/io/ensembl.rb, line 148
def exportview(*args)
  defaults = {
    :type1 => 'bp', 
    :type2 => 'bp', 
    :downstream => '', 
    :upstream => '', 
    :format => 'fasta',
    :options => [],
    :action => 'export', 
    :_format => 'Text', 
    :output => 'txt', 
    :submit => 'Continue >>'
  }

  if args.first.class == Hash
    options = args.first
    if options[:options] and options[:format] != 'fasta' and options[:format] != 'tab' 
      options.update({:format => 'gff'}) 
    end
  else
    options = {
      :seq_region_name => args[0], 
      :anchor1 => args[1], 
      :anchor2 => args[2],
    }

    case args[3]
    when Array
      options.update({:format => 'gff', :options => args[3]}) 
    when Hash
      options.update(args[3])
    end

    if args[4].class == Hash
      options.update(args[4])
    end
  end

  params = defaults.update(options)

  result = Bio::Command.post_form("#{@uri}/exportview", params)

  return result.body
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.