in data/prepare_data.py [0:0]
def structure_to_coords(struct, target_atoms=["N", "CA", "C", "O"], name=""):
"""Convert a PDB structure in to coordinates of target atoms from all AAs
Args:
struct: a Bio.PDB.Structure object representing the protein structure
target_atoms: Target atoms which residues will be returned.
name: String. Name of the structure
Return:
Dictionary with the pdb sequence, atom 3D coordinates and name.
"""
output = {}
# get AA sequence in the pdb structure
pdb_seq = "".join(
[three_to_one(res.get_resname()) for res in struct.get_residues()]
)
output["seq"] = pdb_seq
# get the atom coords
coords = np.asarray(
[
get_atom_coords(res, target_atoms=target_atoms)
for res in struct.get_residues()
]
)
output["coords"] = coords.tolist()
output["name"] = name
return output