[Bioperl-l] Fetch sequences from a fasta file using a list of idenifiers
Chris Fields
cjfields at uiuc.edu
Wed Dec 12 15:22:45 UTC 2007
If you use Bio::Index::Fasta (which is what bp_index.pl uses for FASTA
files) then you can write up your own script. From 'perldoc
Bio::Index::Fasta':
# Once the index is made it can accessed, either in the
# same script or a different one
use Bio::Index::Fasta;
use strict;
my $Index_File_Name = shift;
my $inx = Bio::Index::Fasta−>new(−filename => $Index_File_Name);
my $out = Bio::SeqIO−>new(−format => ’Fasta’,
−fh => \*STDOUT);
foreach my $id (@ARGV) {
my $seq = $inx−>fetch($id); # Returns Bio::Seq object
$out−>write_seq($seq);
}
# or, alternatively
my $id;
my $seq = $inx−>get_Seq_by_id($id); # identical to fetch()
....
chris
On Dec 12, 2007, at 7:29 AM, Nadav Y. Denekamp wrote:
> Hello,
>
> I am trying to retrieve a list of sequences from an indexed flast
> FASTA file. I tried to use the script bp_fetch.pl but I could only
> retrieve one sequence for one identifier. I am looking for a way to
> provide a list of accession numbers to a script and to retrieve the
> sequences. I don't have much experience with perl so I appologize if
> this question is very basic
> thanks - Nadav
>
>
> ------------------------------------------------------------------------------------------------------------
> Nadav Y. Denekamp, Ph.D.,
> Israel Oceanographic and Limnological Research,
> National Institute for Oceanography
> Tel-Shikmona, Haifa, 31080.
> Tel: 972-4-8565259
> Fax: 972-4-8511911
> mobile: 972-50-2167318
> Skype: nadavden
> Email: nadavd at ocean.org.il; nadav.denekamp at gmail.com;
>
> Visit the “Sleeping Beauty” website:
> http://www.gmm.gu.se/SB
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
Christopher Fields
Postdoctoral Researcher
Lab of Dr. Robert Switzer
Dept of Biochemistry
University of Illinois Urbana-Champaign
More information about the Bioperl-l
mailing list