Package Bio :: Package SeqIO :: Module PdbIO
[hide private]
[frames] | no frames]

Module PdbIO

source code

Functions [hide private]
 
PdbSeqresIterator(handle)
Returns SeqRecord objects for each chain in a PDB file.
source code
 
PdbAtomIterator(handle)
Returns SeqRecord objects for each chain in a PDB file
source code
Variables [hide private]
  __package__ = 'Bio.SeqIO'
Function Details [hide private]

PdbSeqresIterator(handle)

source code 
Returns SeqRecord objects for each chain in a PDB file.

The sequences are derived from the SEQRES lines in the
PDB file header, not the atoms of the 3D structure.

Specifically, these PDB records are handled: DBREF, SEQADV, SEQRES, MODRES

See: http://www.wwpdb.org/documentation/format23/sect3.html

PdbAtomIterator(handle)

source code 
Returns SeqRecord objects for each chain in a PDB file

The sequences are derived from the 3D structure (ATOM records), not the
SEQRES lines in the PDB file header.

Unrecognised three letter amino acid codes (e.g. "CSD") from HETATM entries
are converted to "X" in the sequence.

In addition to information from the PDB header (which is the same for all
records), the following chain specific information is placed in the
annotation:

record.annotations["residues"] = List of residue ID strings
record.annotations["chain"] = Chain ID (typically A, B ,...)
record.annotations["model"] = Model ID (typically zero)

Where amino acids are missing from the structure, as indicated by residue
numbering, the sequence is filled in with 'X' characters to match the size
of the missing region, and  None is included as the corresponding entry in
the list record.annotations["residues"].

This function uses the Bio.PDB module to do most of the hard work. The
annotation information could be improved but this extra parsing should be
done in parse_pdb_header, not this module.