#!/usr/bin/perl
use strict;
use warnings;
use Bio::EnsEMBL::Registry;
use Bio::EnsEMBL::ApiVersion;
printf(STDERR "The API version used is %s\n", software_version() );
my $registry = 'Bio::EnsEMBL::Registry';
$registry->load_registry_from_db(
-host => 'ensembldb.ensembl.org',
-user => 'anonymous',
);
my $slice_adaptor = $registry -> get_adaptor('Human', 'Core', 'Slice');
my $regfeat_adaptor = $registry -> get_adaptor('Human', 'funcgen', 'regulatoryfeature');
my $slice = $slice_adaptor -> fetch_by_region('chromosome', 1, 1241196, 1241246);
my @reg_feats = @{ $regfeat_adaptor -> fetch_all_by_Slice( $slice ) };
print "motif\toriginal_score\tsnp_score\n";
foreach my $reg_feat ( @reg_feats ){
my @motif_feats = @{ $reg_feat -> regulatory_attributes( 'motif' ) };
foreach my $mf(@motif_feats){
my $seq = $mf->feature_Slice->seq;
my $binding_matrix = $mf->binding_matrix;
my @line;
push(@line, $mf->display_label);
push(@line, $binding_matrix->relative_affinity($seq));
my $new_seq = $seq;
$new_seq =~ s/TTTGC/TTTTC/;
push(@line, $binding_matrix->relative_affinity($new_seq));
print join("\t", @line) . "\n";
}
}
Friday, 5 April 2013
example of using the Ensembl perl API to see the effect of a SNP on predicted transciption factor binding affinity
About Author
Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Sed posuere consecteturDonec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Read More
Subscribe to:
Post Comments (Atom)
0 comments:
POST A COMMENT