<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi James<br>
<br>
I am glad it works for you now. Yes, starting from a new session is
key as you were probably using an old environment.<br>
<br>
To get the homologues to a particular species, you can use the <a
class="el"
href="http://www.ensembl.org/info/docs/Doxygen/compara-api/classBio_1_1EnsEMBL_1_1Compara_1_1DBSQL_1_1HomologyAdaptor.html#abe833d3aacdf6854e9db032295c7da25">fetch_all_by_Member_paired_species</a>($member,
"mus_musculus") method instead of fetch_all_by_Member().<br>
<br>
I hope this helps<br>
<br>
Javier<br>
<br>
On 17/11/11 15:28, James Blackshaw wrote:
<blockquote cite="mid:4EC52814.2080900@mrc-mbu.cam.ac.uk"
type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
Hello Javier,<br>
I'm unsure why, but it works now. It may be because I was trying
to run it in an SSH session I started before I installed the
ensembl package. all I need to do now is work out how to put in a
filter to only look for homologs in the two species I'm interested
in. <br>
<br>
Thank you for the advice,<br>
-James<br>
<br>
On 16/11/2011 19:33, Javier Herrero wrote:
<blockquote cite="mid:4EC40FEE.2000707@ebi.ac.uk" type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
Hi James<br>
<br>
Sorry, I thought BioMart would have solved your problem. I guess
it would be easier it we stick to just one script rather than
the two you mentioned in an earlier email. I think I would opt
for the first one (slides) as the other ones seems a little
outdated (from the list).<br>
<br>
So, the script from the slides works out of the box (copy &
paste from your email) for me, using e64 API.<br>
<br>
It also works if I substitute the gene stable ID by
ENSDARG00000090113. However, if I use a non-existent gene stable
ID or anything different from the gene stable ID, I get the
error you reported in another email:<br>
<i>Can't call method "dbID" on an undefined value at
~/ensembl-compara/modules/Bio/EnsEMBL/Compara/DBSQL/HomologyAdaptor.pm
line 37.</i><br>
<br>
Please, use that script and check that it works (with the
original gene identifier). Then change the identifier to get the
data for your gene of interest and check that it still works.<br>
<br>
If you get a failure with the original script, there is
something wrong with your setup (API installation, access to the
database, etc). If you get a failure using a different gene
identifier, then you are using a invalid gene identifier.<br>
<br>
I hope this helps<br>
<br>
Javier<br>
<br>
On 16/11/11 18:13, James Blackshaw wrote:
<blockquote cite="mid:4EC3FD61.10607@mrc-mbu.cam.ac.uk"
type="cite">Hello, <br>
<br>
Just a bit of a bump on this as I can't get the script to work
and I've checked that I am using version 64 of Homologene. I
could really do with a decent way to get homologs for a given
species out of Ensembl for a list of genes. Sadly Biomart
isn't much use as I cant get homologs from yeast or mouse to
plants, they're on separate filters. Does anyone on this list
have a similar script they might be willing to send me to see
if I can get it to return anything? <br>
<br>
Regards, <br>
James <br>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">Hi, <br>
this still doesn't work, I get the error: <br>
"Can't call method "fetch_by_source_stable_id" on an
undefined value at
homology_workshop_getAllHomologuesForGene.pl line 28." <br>
<br>
I get the following error off the script for comparing
all homologs between two species. A pity, as that is
otherwise perfect for what I want. <br>
"Can't call method "get_HomologyAdaptor" on an undefined
value at homology_getAllHomologuesBetween2Species.pl
line 24." <br>
<br>
Is there anywhere I'd be able to check the version
number of the API I have? <br>
<br>
Regards, <br>
-James <br>
<br>
On 14/11/2011 12:02, Matthieu Muffato wrote: <br>
<blockquote type="cite">Hi James <br>
<br>
I just hope there is no misunderstanding with the line
numbers. Your script seems to work well, at least
here, replacing the
$homology_adaptor->fetch_all_by_Member($member)
line by
$homology_adaptor->fetch_all_by_Member($member->gene_member)
<br>
<br>
I can have the "dbID" error message when applying both
changes. They are actually not compatible. Either you
specify the gene ID in the first place, and stick with
$homology_adaptor->fetch_all_by_Member($member), or
you keep the protein ID, and you add the
"->gene_member" <br>
<br>
There is a script in the scripts/examples directory of
the ensembl-compara repository, named
homology_workshop_getAllHomologuesForGene.pl, that
does the job if you know the gene name. <br>
<br>
Regards, <br>
Matthieu <br>
<br>
On 14/11/11 11:41, James Blackshaw wrote: <br>
<blockquote type="cite">Hi Matthieu, <br>
Changing Line 16 doesn't help, I get the same error
reported. <br>
Changing line 25 gives me a new error though. <br>
Can't call method "dbID" on an undefined value at <br>
/usr/mbu/software/ensembl/ensembl-compara/modules/Bio/EnsEMBL/Compara/DBSQL/HomologyAdaptor.pm
<br>
line 37. <br>
<br>
What I'm trying to do is get the homologs for a list
of proteins or <br>
associated genes, either works. I'm surprised
there's not already a <br>
script about for it, but can't find on on the
mailing list. <br>
<br>
-James <br>
<br>
<br>
On 14/11/2011 11:25, Matthieu Muffato wrote: <br>
<blockquote type="cite">Hi James <br>
<br>
In Comparam the homologies are stored at the gene
level. Because your <br>
Member object represents a peptide, the homology
list that you <br>
retrieve is empty. <br>
<br>
You can either change the line 25 to <br>
my $homologies = <br>
$homology_adaptor->fetch_all_by_Member($member->gene_member);
<br>
<br>
or change the line 16 to <br>
my $member =
$member_adaptor->fetch_by_source_stable_id("ENSEMBLGENE",
<br>
****) with an Ensembl gene ID if you know it <br>
<br>
to have all the homologies of your favourite gene
<br>
<br>
Hope this helps, <br>
Matthieu <br>
<br>
On 14/11/11 11:15, James Blackshaw wrote: <br>
<blockquote type="cite">Hi, <br>
I am using the code from the API installation
page and that page talks <br>
about version 64. <br>
<a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.org/info/docs/api/api_installation.html">http://www.ensembl.org/info/docs/api/api_installation.html</a>
<br>
<br>
This is my output under verbose, looks like it
is connecting. <br>
Odd number of elements in hash assignment at <br>
/usr/mbu/software/ensembl/ensembl/modules/Bio/EnsEMBL/Utils/Argument.pm
<br>
line 148. <br>
Transcript:ENSDART00000112153
Gene:ENSDARG00000090113 Chr:19 <br>
Start:33519855 End:33522332 <br>
Can't call method "get_all_Member_Attribute" on
an undefined value at <br>
sandbox3.pl line 47. <br>
<br>
Regards, <br>
James <br>
<br>
<br>
On 11/11/2011 20:20, Javier Herrero wrote: <br>
<blockquote type="cite">Hi James <br>
<br>
This error is typical when you fail to connect
to the database. <br>
<br>
I suspect you are using the HEAD code instead
of the branch 64. The <br>
head code is already configured for connecting
to the forthcoming <br>
database. Please switch your code to the 64
branch and try again: <br>
<br>
cvs up -r branch-ensembl-64 <br>
<br>
Regards <br>
<br>
Javier <br>
<br>
On 11/11/11 19:29, Jan Vogel wrote: <br>
<blockquote type="cite">Hi James, <br>
<br>
the first script from the powerpoint works
for me w/o problems or <br>
modifications. I've tried schema 62 and
schema 64 API's. <br>
<br>
<br>
The second one ( 'from the list' ) had some
minor problems. It works <br>
like this : <br>
<br>
my $member = <br>
$member_adaptor->fetch_by_source_stable_id('ENSEMBLGENE','ENSG00000004059');
<br>
<br>
<br>
<br>
or <br>
<br>
my $member = <br>
$member_adaptor->fetch_by_source_stable_id(undef,'ENSG00000004059');
<br>
<br>
I did not try the zfish protein. <br>
<br>
Hth, <br>
Jan <br>
<br>
On Nov 11, 2011, at 9:50 AM, James Blackshaw
wrote: <br>
<br>
<blockquote type="cite">Hi, <br>
I've been trying to put together some
scripts for finding the <br>
homolgies <br>
for some lists of genes I'm interested in,
but I keep getting errors <br>
with the "fetch" methods. <br>
<br>
"Can't call method
"fetch_by_source_stable_id" on an
undefined <br>
value at <br>
sandbox3.pl<a moz-do-not-send="true"
class="moz-txt-link-rfc2396E"
href="http://sandbox3.pl/"><http://sandbox3.pl/></a>
line 15." <br>
<br>
I've used one script taken from a
presentation by Stephen <br>
Fitzgerald at <br>
Edinburgh, and another from this maining
list. I'm including both. <br>
<br>
From the powerpoint: <br>
use strict; <br>
use Bio::EnsEMBL::Registry; <br>
my $reg = "Bio::EnsEMBL::Registry"; <br>
<br>
$reg->load_registry_from_db( <br>
-host=>"ensembldb.ensembl.org<a
moz-do-not-send="true"
class="moz-txt-link-rfc2396E"
href="http://ensembldb.ensembl.org/"><http://ensembldb.ensembl.org/></a>",
<br>
-user => "anonymous"); <br>
<br>
<br>
my $ma = $reg->get_adaptor( <br>
"Multi", "compara", "Member"); <br>
my $member =
$ma->fetch_by_source_stable_id( <br>
"ENSEMBLGENE", "ENSG00000000971"); <br>
<br>
my $homology_adaptor =
$reg->get_adaptor( <br>
"Multi", "compara", "Homology"); <br>
<br>
my $homologies = $homology_adaptor-> <br>
fetch_all_by_Member($member); <br>
<br>
foreach my $this_homology (@$homologies) {
<br>
print $this_homology->description,
"\n"; <br>
my $member_attributes =
$this_homology-> <br>
get_all_Member_Attribute(); <br>
foreach my $this_mem_attr
(@$member_attributes) { <br>
my ($this_member, $this_attribute) = <br>
@$this_mem_attr; <br>
print $this_member->genome_db->name,
" ", <br>
$this_member->source_name, " ", <br>
$this_member->stable_id, "\n"; <br>
} <br>
print "\n"; <br>
} <br>
<br>
==========================================
<br>
<br>
From the list: <br>
use Bio::EnsEMBL::Registry; <br>
Bio::EnsEMBL::Registry->load_registry_from_db(
<br>
-host => 'ensembldb.ensembl.org', <br>
-user => 'anonymous', <br>
-port => 5306); <br>
my $member_adaptor =
Bio::EnsEMBL::Registry->get_adaptor( <br>
'Multi','compara','Member'); <br>
<br>
# fetch a Member <br>
# get the MemberAdaptor <br>
my $member_adaptor = <br>
Bio::EnsEMBL::Registry->get_adaptor('Multi','compara','Member');
<br>
<br>
# fetch a Memmy $member = <br>
$member_adaptor->fetch_by_source_stable_id('ENSEMBLPROTEIN','ENSG00000004059');
<br>
<br>
my $member = <br>
$member_adaptor->fetch_by_source_stable_id('ENSEMBLPEP','ENSDARP00000103634');
<br>
<br>
# print out some information about the
Member <br>
print $member->description, "\n"; <br>
<br>
<br>
<br>
my $homology_adaptor =
Bio::EnsEMBL::Registry->get_adaptor('Multi',
<br>
'compara', 'Homology'); <br>
my $homologies =
$homology_adaptor->fetch_all_by_Member($member);
<br>
<br>
# That will return a reference to an array
with all <br>
homologies(orthologues in <br>
# other species and paralogues in the same
one) <br>
# Then for each homology, you can get all
the Members implicated <br>
<br>
foreach my $homology (@{$homologies}) { <br>
# You will find different kind of
description <br>
# UBRH, MBRH, RHS, YoungParalogues <br>
# see
ensembl-compara/docs/docs/schema_doc.html
for more details <br>
<br>
print $homology->description," ",
$homology->subtype,"\n"; <br>
# And if they are defined dN and dS
related values <br>
print " dn ", $homology->dn,"\n"; <br>
print " ds ", $homology->ds,"\n"; <br>
print " dnds_ratio ",
$homology->dnds_ratio,"\n"; <br>
} <br>
<br>
my $homology = $homologies->[0]; <br>
# take one of the homologies and lookinto
it <br>
<br>
foreach my $member_attribute <br>
(@{$homology->get_all_Member_Attribute})
{ <br>
<br>
# for each Member, you get information on
the Member specifically <br>
and in <br>
# relation to the homology relation via
Attribute object <br>
<br>
my ($member, $attribute) =
@{$member_attribute}; <br>
print (join " ", map { $member->$_ }
qw(stable_id taxon_id))."\n"; <br>
print (join " ", map { $attribute->$_ }
qw(perc_id <br>
perc_posperc_cov))."\n"; <br>
<br>
} <br>
====================================================
<br>
<br>
<br>
<br>
James Blackshaw <br>
PhD Student <br>
MRC Mitochondrial Biology Unit <br>
<br>
<br>
_______________________________________________
<br>
Dev mailing list <a
moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:Dev@ensembl.org">Dev@ensembl.org</a><a
moz-do-not-send="true"
class="moz-txt-link-rfc2396E"
href="mailto:Dev@ensembl.org"><mailto:Dev@ensembl.org></a>
<br>
List admin (including
subscribe/unsubscribe): <br>
<a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog: <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
</blockquote>
<br>
<br>
_______________________________________________
<br>
Dev mailing <a moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:listDev@ensembl.org">listDev@ensembl.org</a><a
moz-do-not-send="true"
class="moz-txt-link-rfc2396E"
href="mailto:Dev@ensembl.org"><mailto:Dev@ensembl.org></a>
<br>
List admin (including <br>
subscribe/unsubscribe):<a
moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog:<a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
</blockquote>
-- <br>
Javier Herrero, PhD <br>
Ensembl Compara Project Leader <br>
European Bioinformatics Institute (EMBL-EBI) <br>
Wellcome Trust Genome Campus, Hinxton <br>
Cambridge - CB10 1SD - UK <br>
<br>
<br>
_______________________________________________
<br>
Dev mailing <a moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:listDev@ensembl.org">listDev@ensembl.org</a><a
moz-do-not-send="true"
class="moz-txt-link-rfc2396E"
href="mailto:Dev@ensembl.org"><mailto:Dev@ensembl.org></a>
<br>
List admin (including <br>
subscribe/unsubscribe):<a
moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog:<a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
</blockquote>
<br>
<br>
_______________________________________________
<br>
Dev mailing list <a moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:Dev@ensembl.org">Dev@ensembl.org</a>
<br>
List admin (including subscribe/unsubscribe): <br>
<a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog: <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
</blockquote>
<br>
</blockquote>
</blockquote>
<br>
</blockquote>
<br>
_______________________________________________ <br>
Dev mailing list <a moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:Dev@ensembl.org">Dev@ensembl.org</a> <br>
List admin (including subscribe/unsubscribe): <a
moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog: <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
</blockquote>
--- <br>
Andrew Yates Ensembl Core Software
Project Leader <br>
EMBL-EBI Tel: +44-(0)1223-492538 <br>
Wellcome Trust Genome Campus Fax: +44-(0)1223-494468 <br>
Cambridge CB10 1SD, UK <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.org/">http://www.ensembl.org/</a>
<br>
<br>
</blockquote>
<br>
</blockquote>
<br>
<br>
_______________________________________________ <br>
Dev mailing list <a moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:Dev@ensembl.org">Dev@ensembl.org</a> <br>
List admin (including subscribe/unsubscribe): <a
moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
<br>
Ensembl Blog: <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.ensembl.info/">http://www.ensembl.info/</a>
<br>
<br>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Javier Herrero, PhD
Ensembl Compara Project Leader
European Bioinformatics Institute (EMBL-EBI)
Wellcome Trust Genome Campus, Hinxton
Cambridge - CB10 1SD - UK</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Dev mailing list <a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Dev@ensembl.org">Dev@ensembl.org</a>
List admin (including subscribe/unsubscribe): <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
Ensembl Blog: <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.ensembl.info/">http://www.ensembl.info/</a>
</pre>
</blockquote>
<br>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Javier Herrero, PhD
Ensembl Compara Project Leader
European Bioinformatics Institute (EMBL-EBI)
Wellcome Trust Genome Campus, Hinxton
Cambridge - CB10 1SD - UK</pre>
</body>
</html>