{"action":"created","issue":{"url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/1","repository_url":"https://api.github.com/repos/aqlaboratory/proteinnet","labels_url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/1/comments","events_url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/1/events","html_url":"https://github.com/aqlaboratory/proteinnet/issues/1","id":307416964,"number":1,"title":"Generate lists of PDB ids / chains for the training, validation and test sets","user":{"login":"ostrokach","id":5614375,"avatar_url":"https://avatars2.githubusercontent.com/u/5614375?v=4","gravatar_id":"","url":"https://api.github.com/users/ostrokach","html_url":"https://github.com/ostrokach","followers_url":"https://api.github.com/users/ostrokach/followers","following_url":"https://api.github.com/users/ostrokach/following{/other_user}","gists_url":"https://api.github.com/users/ostrokach/gists{/gist_id}","starred_url":"https://api.github.com/users/ostrokach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ostrokach/subscriptions","organizations_url":"https://api.github.com/users/ostrokach/orgs","repos_url":"https://api.github.com/users/ostrokach/repos","events_url":"https://api.github.com/users/ostrokach/events{/privacy}","received_events_url":"https://api.github.com/users/ostrokach/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-03-21T21:02:40Z","updated_at":"2018-03-22T11:24:16Z","closed_at":null,"author_association":"NONE","body":"Hi,\r\n\r\nI think that you have gone to great lengths to make sure that there is no information leakage between the training and the validation datasets. I would like to change my own datasets to match your training / validation split. Could you suggest a way for me to do this?\r\n\r\nIn particular, I was wondering what would be the easiest way for me to generate a list of PDB and chain ids that correspond to the training, validation, and test datasets for each of the CASP experiments?\r\n\r\nI can see that each entry in the tensorflow files has an id, which can be something like `1WIO_1_A` , `1YX2_1_A`, `1KA1_1_A`, `1D2O_1_A`, etc. or something like `1DLC_d1dlca2`, `2BU7_d2bu7a2`, `1OMW_d1omwg-`, `1NUB_d1nubb3`, etc. Could you explain how these IDs were generated, what each part corresponds to, and what the difference is between the first type of ids (which looks like `{pdb_id}_{model_id}_{chain_id}`) and the second type of ids?\r\n\r\nThank you!"},"comment":{"url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/comments/375270286","html_url":"https://github.com/aqlaboratory/proteinnet/issues/1#issuecomment-375270286","issue_url":"https://api.github.com/repos/aqlaboratory/proteinnet/issues/1","id":375270286,"user":{"login":"alquraishi","id":5205204,"avatar_url":"https://avatars1.githubusercontent.com/u/5205204?v=4","gravatar_id":"","url":"https://api.github.com/users/alquraishi","html_url":"https://github.com/alquraishi","followers_url":"https://api.github.com/users/alquraishi/followers","following_url":"https://api.github.com/users/alquraishi/following{/other_user}","gists_url":"https://api.github.com/users/alquraishi/gists{/gist_id}","starred_url":"https://api.github.com/users/alquraishi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alquraishi/subscriptions","organizations_url":"https://api.github.com/users/alquraishi/orgs","repos_url":"https://api.github.com/users/alquraishi/repos","events_url":"https://api.github.com/users/alquraishi/events{/privacy}","received_events_url":"https://api.github.com/users/alquraishi/received_events","type":"User","site_admin":false},"created_at":"2018-03-22T11:24:16Z","updated_at":"2018-03-22T11:24:16Z","author_association":"CONTRIBUTOR","body":"Thanks! Yes you should be able to use the IDs to change your own datasets, but there are some caveats.\r\n\r\nSo the easiest are the entries coming from the PDB, which as you mentioned are of the form `{pdb_id}_{model_id}_{chain_id}` and so you can use the `pdb_id` and `chain_id` fields to extract the relevant chain from the PDB file. ProteinNet is based on mmCIF files, not PDB files, and so it also uses the numeric identifier used by mmCIF files which is guaranteed to be unique. That's the `model_id` field, but you can probably get away with using old PDB files with `pdb_id` + `chain_id`.\r\n\r\nEntries that look like `1DLC_d1dlca2` are coming from [ASTRAL](http://scop.berkeley.edu). As mentioned in the documentation ProteinNet integrates ASTRAL as well. If you want to toss out all the ASTRAL domains you can just ignore those entries, but keep in mind that some cluster members (that belong to the cluster with the ASTRAL exemplar) may be just regular PDB entries, and so you would lose them as well. For the training set if you use the 100% seq. id. subset then you don't have to worry about that, as everything is included. But for the validation set you could lose some PDB structures. You can also go back to the PDB entries and fish out the ASTRAL domains that were extracted.\r\n\r\nFinally for the test set entries, CASP does provide a mapping to the PDB structures, e.g. [here for CASP12](http://predictioncenter.org/casp12/targetlist.cgi). You can modify the URL for other CASPs.\r\n\r\nI will try to integrate this information in the documentation and will eventually provides the ID separately as part of the raw data."}}
{"actor":{"display_login":"alquraishi"}}