Question: List Species Names In Local Mysql Ensembl Database Via Pycogent?
0
gravatar for a1ultima
13 months ago by
a1ultima340
London
a1ultima340 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 12 months ago by Biostar ♦♦ 0 • written 13 months ago by a1ultima340
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 13 months ago • written 13 months ago by Devon Ryan28k

@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 13 months ago by a1ultima340
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 13 months ago by Devon Ryan28k

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

ADD REPLYlink written 13 months ago by a1ultima340

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

ADD REPLYlink written 13 months ago by Pierre Lindenbaum68k
1
gravatar for a1ultima
13 months ago by
a1ultima340
London
a1ultima340 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 13 months ago • written 13 months ago by a1ultima340
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: 539 users visited in the last hour