7
$\begingroup$

I'd like to create a dataset consisting of all sequences which are either present in the PDB, or whose homolog is present in the PDB. In other words, any sequence in the PDB or any sequence related to it. The similiarity margin is to be very wide, so anything above, for instance, 25% sequence identity is accepted (perhaps there are better criteria, but you get the point).

No further limitations, so any organism, with or without experimental data, not limited to the manually curated Swissprot set.

I have tried the SIFTS database, but that contains, as far as I can tell, only mappings for sequence identity >85%. I would like to go far below that.

$\endgroup$
2
  • 3
    $\begingroup$ Thanks for the edit, that's much clearer! So, next question: how do you define "homologs"? Are you looking for functional homology alone? Is sequence homology enough? I am guessing you will be assuming that homologous sequences will share a structure but that is most certainly not always the case. Is there any reason you don't do it the other way around? Get all sequences from the PDB and then map those to UniProt accessions? $\endgroup$
    – terdon
    Commented Dec 12, 2017 at 17:00
  • $\begingroup$ @terdon Homologs are defined here as >25% sequence identity, so very very broadly. I would, in fact, be willing to run a BLAST search for each PDB entry vs Uniprot, but I assume this will take quite some time, so I'm checking to avoid reinventing the wheel. $\endgroup$
    – Zubo
    Commented Jul 2, 2018 at 23:17

2 Answers 2

4
$\begingroup$

For the correspondence between PDB and Uniprot entries you can use SIFTS -- a semi-automated mapping between PDB and UniProt maintained by PDBe.

The pipeline that creates the mappings uses BLAST and a few other criteria to decide which UniProt entry should be assigned to each PDB entry. The SIFTS website has all the data in CSV files.

$\endgroup$
1
  • $\begingroup$ Thanks for the advice! I took a look. In the referenced publication, I only found a mention that they are looking for a 90% sequence identity to accept a cross-reference; this is not enough for me - I need all UniProt entries with, say, sequence identity above 25%. As I understand it, this is what is contained in the files on the ftp server ftp.ebi.ac.uk/pub/databases/msd/sifts , notably the uniprot_segments_observed. $\endgroup$
    – Zubo
    Commented Jul 2, 2018 at 23:13
1
$\begingroup$

You can download a BLAST db containing all sequences of proteins in Uniprot and in the PDB. The way I would go about this is first download the databases for uniprot and PDB, then query the PDB database for each sequence from Uniprot. If you get a BLAST hit above a certain threshold (whatever you define as homolog) then add that sequence to a file, and voila, you have a full set of sequences that fulfill your criteria. The only tools you would need for this are the BLAST executables (found here) and the databases (info on how to download can be found here).

I should note that you don't really need any Python to get this to work, only some shell scripting. Although you can run these commands through a Python wrapper if you really want to.

Good luck!

$\endgroup$
1
  • $\begingroup$ So that's like 60M BLAST queries? How long would that take? $\endgroup$
    – Zubo
    Commented Jul 2, 2018 at 20:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.