Module: Bio::NCBI::REST::ESearch::Methods

Included in:
Bio::NCBI::REST::ESearch, Bio::NCBI::REST::ESearch
Defined in:
lib/bio/io/ncbirest.rb

Overview

Search database entries by given keywords using E-Utils (esearch).

sequences = gene + genome + nucleotide + protein + popset + snp
nucleotide = nuccore + nucest + nucgss
pubmed protein nucleotide nuccore nucgss nucest structure genome
books cancerchromosomes cdd gap domains gene genomeprj gensat geo
gds homologene journals mesh ncbisearch nlmcatalog omia omim pmc
popset probe proteinclusters pcassay pccompound pcsubstance snp
taxonomy toolkit unigene unists

Usage

Bio::NCBI::REST::ESearch.search("nucleotide", "tardigrada")
Bio::NCBI::REST::ESearch.count("nucleotide", "tardigrada")

Bio::NCBI::REST::ESearch.nucleotide("tardigrada")
Bio::NCBI::REST::ESearch.popset("aldh2")
Bio::NCBI::REST::ESearch.taxonomy("tardigrada")
Bio::NCBI::REST::ESearch.pubmed("tardigrada", "reldate" => 365)
Bio::NCBI::REST::ESearch.pubmed("mammoth mitochondrial genome")
Bio::NCBI::REST::ESearch.pmc("Indonesian coelacanth genome Latimeria menadoensis")
Bio::NCBI::REST::ESearch.journal("bmc bioinformatics")

ncbi = Bio::NCBI::REST::ESearch.new
ncbi.search("nucleotide", "tardigrada")
ncbi.count("nucleotide", "tardigrada")

ncbi.nucleotide("tardigrada")
ncbi.popset("aldh2")
ncbi.taxonomy("tardigrada")
ncbi.pubmed("tardigrada", "reldate" => 365)
ncbi.pubmed("mammoth mitochondrial genome")
ncbi.pmc("Indonesian coelacanth genome Latimeria menadoensis")
ncbi.journal("bmc bioinformatics")

Arguments:

  • term: search keywords (required)

  • limit: maximum number of entries to be returned (0 for unlimited)

  • hash: hash of E-Utils option

Returns

array of entry IDs or a number of results

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(*args) ⇒ Object

nucleotide(“tardigrada”) nucleotide(“tardigrada”, 0) pubmed(“tardigrada”) pubmed(“tardigrada”, 5) pubmed(“tardigrada”, “reldate” => 365) pubmed(“tardigrada”, 5, “reldate” => 365) pubmed(“tardigrada”, => 365, 5)



488
489
490
# File 'lib/bio/io/ncbirest.rb', line 488

def method_missing(*args)
  self.search(*args)
end

Instance Method Details

#count(db, term, hash = {}) ⇒ Object

count(“nucleotide”, “tardigrada”) count(“pubmed”, “tardigrada”) count(“journals”, “bmc”)



475
476
477
478
479
# File 'lib/bio/io/ncbirest.rb', line 475

def count(db, term, hash = {})
  opts = { "db" => db }
  opts.update(hash)
  Bio::NCBI::REST.esearch_count(term, opts)
end

#est(*args) ⇒ Object

alias for “nucest”



498
499
500
# File 'lib/bio/io/ncbirest.rb', line 498

def est(*args)
  self.search("nucest", *args)
end

#gss(*args) ⇒ Object

alias for “nucgss”



503
504
505
# File 'lib/bio/io/ncbirest.rb', line 503

def gss(*args)
  self.search("nucgss", *args)
end

#journal(*args) ⇒ Object

alias for journals



493
494
495
# File 'lib/bio/io/ncbirest.rb', line 493

def journal(*args)
  self.search("journals", *args)
end

#search(db, term, *args) ⇒ Object

search(“nucleotide”, “tardigrada”) search(“nucleotide”, “tardigrada”, 0) # unlimited search(“pubmed”, “tardigrada”) search(“pubmed”, “tardigrada”, 5) # first five search(“pubmed”, “tardigrada”, “reldate” => 365) # within a year search(“pubmed”, “tardigrada”, 5, “reldate” => 365) # combination search(“pubmed”, “tardigrada”, => 365, 5) # combination 2 search(“journals”, “bmc”, 10)



456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
# File 'lib/bio/io/ncbirest.rb', line 456

def search(db, term, *args)
  limit = 100
  hash = {}
  args.each do |arg|
    case arg
    when Hash
      hash.update(arg)
    else
      limit = arg.to_i
    end
  end
  opts = { "db" => db }
  opts.update(hash)
  Bio::NCBI::REST.esearch(term, opts, limit)
end