Question: List Species Names In Local Mysql Ensembl Database Via Pycogent?
0
gravatar for a1ultima
15 months ago by
a1ultima360
London
a1ultima360 wrote:

We have a local EnsEMBL MySQL database containing annotated mosquito genomes.

The PyCogent cookbook states **Here** that you can access/query data from a local MySQL EnsEMBL database via the cogent.db.ensembl.HostAccount module. **Here** is the source code for PyCogent's ensembl-api.

But I cannot access the data as the functions assume a priori that I know the exact names of species (string) whose genomes I am trying to query... After hours of searching online, I would greatly appreciate if somebody could tell me how I can list the names of species (that PyCogent would understand) so that I can finally query the local database for the genome data.

This code shows my problem, note the commenting:

Release = 73

from cogent.db.ensembl import HostAccount, Genome

acc = HostAccount('localhost', 'username1', 'password1')  # login details to MySQL server

genome = Genome(Species='?????',Release=73,account=acc)   # Where can I find the available Species list so I can replace the '?????'
ADD COMMENTlink modified 14 months ago by Biostar ♦♦ 0 • written 15 months ago by a1ultima360
1

Presumably it recognizes things listed in _species_common_map here.

Edit: It does in fact, at least from a cursory read through the code. If you're familiar with SQL you should also be able to just browse through the tables.

ADD REPLYlink modified 15 months ago • written 15 months ago by Devon Ryan30k

@dpryan79 when I run the "Species" module.. it just lists all species available in the public database - not the local. I was told the whole point of these APIs was to avoid complex MySQL querying due to the complexity of EnsEMBL schema

ADD REPLYlink written 15 months ago by a1ultima360
1

I know nothing about PyCogent, but the things listed there are the species recognized. If you're customized the local database instance, then presumably you would have tracked what you did.

ADD REPLYlink written 15 months ago by Devon Ryan30k

That gave me a lead to work out how, thank you very much

ADD REPLYlink written 15 months ago by a1ultima360

cross posted on SO: http://stackoverflow.com/questions/21241834

ADD REPLYlink written 15 months ago by Pierre Lindenbaum70k
1
gravatar for a1ultima
15 months ago by
a1ultima360
London
a1ultima360 wrote:

After a useful tip from @dpryan79 I looked at PyCogent's source code and it turns out the only way I could view species names available was by actually logging into the MySQL server and listing the databases, importantly the database names themselves require a naming convention whereby the first two strings delimited by underscores (_) are the genus and species names respectively.

So by logging into the mysql server via terminal:

mysql -hlocalhost -uuser1 -ppass1

Then typing:

SHOW DATABASES

I can see the species available by looking at the names of each database, specifically the first two strings delimited by underscores, e.g. the following databases listed:

anopheles_gambiae_core_1312_73_1
anopheles_arabeinsis_core_1312_73_1
anopheles_funestus_core_1312_73_1
anopheles_gambiaeM_core_1312_73_1

Suggest I have the following species available: anopheles gambiae, anopheles arabeinsis, anopheles funestus and anopheles gambiae type M

ADD COMMENTlink modified 15 months ago • written 15 months ago by a1ultima360
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 443 users visited in the last hour