Re: An example to query PMID given GEO accession number?

Peng Yu <[email protected]>
Newsgroups gmane.comp.lang.perl.bio.general
Message-ID <CABrM6wn9BFTpaPSc2g8nm5r7ey5QZyebjZQMKB2t8uP_cPrS=g@mail.gmail.com>
On Sun, Jun 14, 2015 at 8:33 PM, Smithies, Russell
<[email protected]> wrote:
> You need to specify you want to use history - it doesn't do it by default.
>
> my $factory = Bio::DB::EUtilities->new(
>         -eutil   => 'esearch',
>         -db      => 'gds',
>         -term    => "${geo}[ACCN] AND (gse[ETYP] OR gds[ETYP])",
>         -email   => '[email protected]',
>         -usehistory => 'y',   <<<<============
> );

I still can't get the correct result (it should be 23028701). Could
you try the code and see if it works on your machine?

$ ./main.pl
Query translation: GSE39684[ACCN] AND gse[ETYP]
Count = 1
200039684
$ cat main.pl
#!/usr/bin/env perl

use strict;
use warnings;
use autodie;

use FindBin;
use lib "$FindBin::Bin/.";
use Bio::DB::EUtilities;

# want to get PMID 23028701
my $geo        = "GSE39684";
my $factory = Bio::DB::EUtilities->new(
  -eutil   => 'esearch',
  -db      => 'gds',
  #-term    => "${geo}[ACCN] AND (gse[ETYP] OR gds[ETYP])", # whether
I use this line or the following line, the result is the same.
  -term    => "${geo}[ACCN] AND (gse[ETYP])",
  -email   => '[email protected]',
  -usehistory => 'y',
);

# query terms are mapped; what's the actual query?
print "Query translation: ",$factory->get_query_translation,"\n";
# query hits
print "Count = ",$factory->get_count,"\n";
# UIDs
my @ids = $factory->get_ids;
print "@ids\n";


-- 
Regards,
Peng
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.