labstructbioinf / localpdb

Python package to manage protein structures and their annotations
MIT License
40 stars 5 forks source link

PDBClustering loading issue #22

Closed jludwiczak closed 2 years ago

jludwiczak commented 2 years ago

@staszekdh In

lpdb = PDB(db_path=db_path, plugins=['PDBClustering', 'ECOD'])

Out

/temp/sdunin/miniconda3/envs/jup/lib/python3.10/site-packages/localpdb/utils/prot.py:60 - Passing a set as an indexer is deprecated and will raise in a future version. Use a list instead.
/temp/sdunin/miniconda3/envs/jup/lib/python3.10/site-packages/localpdb/plugins/Plugin.py:40 - Loaded version of the plugin 'ECOD' (20220613) does not match the localpdb version (20220916). Data may not be fully accurate.

In

lpdb.load_clustering_data(redundancy=30) Out


---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Input In [5], in <cell line: 1>()
----> 1 lpdb.load_clustering_data(redundancy=30)

File /temp/sdunin/miniconda3/envs/jup/lib/python3.10/site-packages/localpdb/plugins/PDBClustering.py:65, in PDBClustering.load_clustering_data(self, redundancy)
     63 _, pdb_idxs = self.lpdb._get_current_indexes()
     64 if os.path.isfile(fn_mapping):
---> 65     initial_clusters = parse_cluster_data(fn)
     66     with open(fn_mapping) as f:
     67         mapping = json.loads(f.read())

File /temp/sdunin/miniconda3/envs/jup/lib/python3.10/site-packages/localpdb/plugins/PDBClustering.py:96, in parse_cluster_data(fn)
     94 for c in range(1, len(data)+1):
     95     for entry in data[c-1].split(' '):
---> 96         pdb, chain = entry.split('_')
     97         cluster_data['{}_{}'.format(pdb.lower(), chain)] = str(c)
     98 return cluster_data

ValueError: too many values to unpack (expected 2)
jludwiczak commented 2 years ago

This is related to the addition of AF2 models to the RCSB clustering data.