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
-
#count(db, term, hash = {}) ⇒ Object
count(“nucleotide”, “tardigrada”) count(“pubmed”, “tardigrada”) count(“journals”, “bmc”).
-
#est(*args) ⇒ Object
alias for “nucest”.
-
#gss(*args) ⇒ Object
alias for “nucgss”.
-
#journal(*args) ⇒ Object
alias for journals.
-
#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).
-
#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).
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)
342 343 344 |
# File 'lib/bio/io/ncbirest.rb', line 342 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”)
329 330 331 332 333 |
# File 'lib/bio/io/ncbirest.rb', line 329 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”
352 353 354 |
# File 'lib/bio/io/ncbirest.rb', line 352 def est(*args) self.search("nucest", *args) end |
#gss(*args) ⇒ Object
alias for “nucgss”
357 358 359 |
# File 'lib/bio/io/ncbirest.rb', line 357 def gss(*args) self.search("nucgss", *args) end |
#journal(*args) ⇒ Object
alias for journals
347 348 349 |
# File 'lib/bio/io/ncbirest.rb', line 347 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)
310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 |
# File 'lib/bio/io/ncbirest.rb', line 310 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 |