读取x,y,z坐标时Biopython MMCIF2Dict返回错误

时间:2017-12-24 03:48:17

标签: biopython

我正在尝试使用

加载PDB_ID 5itp的蛋白质原子坐标
mmcif_dict = MMCIF2Dict.MMCIF2Dict("5itp.cif") 
for i in range(0,len(mmcif_dict["_atom_site.auth_atom_id"])):
    print(mmcif_dict["_atom_site.Cartn_x"][i])

它返回一个错误:IndexError:字符串索引超出范围。 蛋白质4y7l会弹出相同的错误。

我查看这两种蛋白质的cif文件,发现Cartn_x有两个条目。第一个出现在ATOM坐标

之前
...
_atom_site.pdbx_PDB_ins_code 
_atom_site.Cartn_x 
_atom_site.Cartn_y 
_atom_site.Cartn_z 
_atom_site.occupancy
...

第二个出现在

2  2 'Structure model' '_atom_site.Cartn_x'                        
3  2 'Structure model' '_atom_site.Cartn_y'                        
4  2 'Structure model' '_atom_site.Cartn_z'  

如果我删除第二个,MMCIF2Dict.MMCIF2Dict正常工作。但问题是修改每个这样的cif文件以读取原子坐标是不切实际的。有没有人有这个问题的解决方案?

0 个答案:

没有答案