[Bioperl-l] Download sequence by genomic location
Chris Fields
cjfields at illinois.edu
Thu Jul 29 04:46:56 UTC 2010
It's not part of BioPerl, but is on CPAN:
http://search.cpan.org/dist/Bio-Das/
You don't appear to be following the Bio::Das API. The following worked for me:
#!/usr/bin/env perl
use strict;
use warnings;
use Bio::Das;
my $das = Bio::Das->new(
-source => 'http://genome.cse.ucsc.edu/cgi-bin/das',
-dsn => 'hg18',
);
my $segment = $das->segment('1:1,100000');
for my $sf ($segment->features) {
printf("%s(%s):%d-%d(%d)\n", $sf->display_name,
$sf->primary_tag, $sf->start, $sf->end, $sf->strand);
}
chris
On Jul 28, 2010, at 10:40 PM, Peng Yu wrote:
> I didn't see a document for Bio::Das in my bioperl,
>
> $ perldoc Bio::Das
> No documentation found for "Bio::Das".
> $ perldoc Bio::Das::SegmentI
> $ perldoc Bio::Das::FeatureTypeI
>
> I thought that maybe my bioperl installation is corrupted. Then I
> install Bio::Das (cpan Bio::Das), which was unsuccessful. Then I
> install it by "cpan -f Bio::Das".
>
> I also manually installed IO-Socket-SSL-1.33.tar.gz. Then try the
> example. It seems that the there is still something missing. I guess
> there must be some problem with my bioperl installation.
>
> Shall I reinstall it? Is there an easy fix?
>
> $ ./main.pl
> Using password in unencrypted URI against RFC #2396 recommendation at
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1/Bio/Das/HTTP/Fetch.pm
> line 331.
> Must have IO::Socket::SSL installed to use https: urls: Can't locate
> Net/SSLeay.pm in @INC (@INC contains:
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/5.10.1/x86_64-linux
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/5.10.1
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1 .) at
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1/IO/Socket/SSL.pm
> line 18.
> BEGIN failed--compilation aborted at
> /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1/IO/Socket/SSL.pm
> line 18.
> Compilation failed in require at (eval 41) line 3.
> at /home/pengy/utility/linux/opt/perl-5.10.1/lib/site_perl/5.10.1/Bio/Das.pm
> line 200
>
> $ cat main.pl
> #!/usr/bin/env perl
>
> use strict;
> use warnings;
> use Bio::Das;
>
> my $das = Bio::Das->new(5); # timeout of 5 sec
> my @response = $das->dsn('http://stein.cshl.org/perl/das',
> 'http://genome.cse.ucsc.edu/cgi-bin/das',
> 'http://user:pass@www.wormbase.org/db/das',
> 'https://euclid.well.ox.ac.uk/cgi-bin/das',
> );
>
> for my $url (@response) {
> if ($url->is_success) {
> my @dsns = $url->results;
> print "$url:\t\n";
> foreach (@dsns) {
> print "\t",$_->url,"\t",$_->description,"\n";
> }
> } else {
> print "$url: ",$url->error,"\n";
> }
> }
>
>
> On Wed, Jul 28, 2010 at 5:47 PM, Chris Fields <cjfields at illinois.edu> wrote:
>> Forgot completely, but this should be possible via Bio::DAS:
>>
>> http://search.cpan.org/~lds/Bio-Das-1.06/Das.pm
>>
>> I have used it myself via GBrowse.
>>
>> chris
>>
>> On Jul 28, 2010, at 5:14 PM, Peng Yu wrote:
>>
>>> I could download a sequence by location at genome browser.
>>>
>>> http://genome.ucsc.edu/cgi-bin/hgc?hgsid=166347358&o=38129163&g=getDna&i=mixed&c=chr13&l=38129163&r=38153298&db=mm9&hgsid=166347358
>>>
>>> I know that there are ways to get the sequence. But I don't see a way
>>> to get the sequence by location. Could anybody let me know if there is
>>> such a function in bioperl?
>>> http://www.bioperl.org/wiki/HOWTO:Beginners#Retrieving_a_sequence_from_a_database
>>>
>>> --
>>> Regards,
>>> Peng
>>> _______________________________________________
>>> Bioperl-l mailing list
>>> Bioperl-l at lists.open-bio.org
>>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>>
>>
>
>
>
> --
> Regards,
> Peng
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
More information about the Bioperl-l
mailing list