annymous has asked for the wisdom of the Perl Monks concerning the following question:
Hi all,
I am writing a perl script that uses eLink to eFetch (NCBI Eutilities), from eLink to eFetch the script works if I use a list of id’s at $params{id} ‘ ‘;
But I want the script to read each file from my home directory and outputs the result of each file with an extension separately into my home directory.
And also in some cases there is a whole genome sequence, from which I need to retrieve the coordinates of starting point and the ending point of the sequences into a separate file.
Can anyone help me, how can I proceed further with this script?
#!/usr/bin/perl # ELink (batch) - EFetch use strict; use NCBI_PowerScripting; my (%params, %links); my @db = qw(protein nucleotide, gene); my $link; my $dir ='/home/'; opendir (DIR,$dir)or die $!; while (my $file = readdir (DIR)) { next unless (-f "$dir/$file"); next unless ($file =~m/\. gi$/); my @data; open (MYFILE,$file) or die "cannot open $file:$!"; open (OUT,">$file.data") or die "cannot open $file:$!"; #ELink $params{db} = $db[0]; $params{id} = ''; %links = elink_batch_to($db[1], %params); #EFetch foreach $link (keys %links) { %params = extract_links($link, %links); $params{outfile} = $link . '.dat'; $params{retmode} = 'text'; if ($link =~ /nuccore/) { $params{rettype} = 'fasta'; } efetch_batch(%params); print nuccore; }
20090719 Janitored by Corion: Added formatting, code tags, as per Writeup Formatting Tips
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: perl - loop
by davorg (Chancellor) on Jul 17, 2009 at 12:21 UTC | |
Re: perl - loop
by ELISHEVA (Prior) on Jul 17, 2009 at 12:01 UTC | |
Re: perl - loop
by derby (Abbot) on Jul 17, 2009 at 12:39 UTC | |
by apl (Monsignor) on Jul 17, 2009 at 13:08 UTC | |
Re: perl - loop
by Utilitarian (Vicar) on Jul 17, 2009 at 13:42 UTC | |
Re: perl - loop
by ssandv (Hermit) on Jul 17, 2009 at 17:13 UTC |
Back to
Seekers of Perl Wisdom