Thanks Emily! I wrote this code to convert the coordinates from 20000 to 30000 on chromosome 10 in grch37 using ensembl release 95:
use warnings;
use strict;
use Bio::EnsEMBL::Registry;
my $registry = 'Bio::EnsEMBL::Registry';
$registry->load_registry_from_db(
-host => 'ensembldb.ensembl.org', # alternatively 'useastdb.ensembl.org'
-user => 'anonymous'
);
my $slice_adaptor = $registry->get_adaptor( 'Human', 'Core', 'Slice' );
my $slice = $slice_adaptor->fetch_by_region( 'chromosome', '10', 20000, 30000 );
my $coord_sys1 = $slice->coord_system()->name();
my $seq_region1 = $slice->seq_region_name();
my $start1 = $slice->start();
my $end1 = $slice->end();
my $strand1 = $slice->strand();
print "Slice: $coord_sys1 $seq_region1 $start1-$end1 ($strand1)\n";
my $cs_adaptor = $registry->get_adaptor( 'Human', 'Core', 'CoordSystem' );
my $cs = $cs_adaptor->fetch_by_name('chromosome');
printf "Coordinate system: %s %s\n", $cs->name(), $cs->version();
my $slice2 = $slice->project( 'chromosome', 'GRCh37' );
my $coord_sys = $slice2->coord_system()->name();
my $seq_region = $slice2->seq_region_name();
my $start = $slice2->start();
my $end = $slice2->end();
my $strand = $slice2->strand();
print "New_Slice: $coord_sys $seq_region $start-$end ($strand)\n";
And I get his output:
Slice: chromosome 10 25000-30000 (1)
Coordinate system: chromosome GRCh38
Can't call method "coord_system" on unblessed reference at test.pl line 41.
Could you please provide your comments on resolving this error? Thanks much!