harbor.pli.plip_analysis_schema.calculate_fingerprint

harbor.pli.plip_analysis_schema.calculate_fingerprint(plint_report: PLIntReport, level: FingerprintLevel) dict[source]

Calculate a fingerprint of the protein-ligand interactions based on the specified level of detail.

Parameters:
  • plint_report (PLIntReport) – A report containing a list of protein-ligand interactions.

  • level (FingerprintLevel) – The level of detail for the fingerprint. Options include: - ByTotalInteractions: Returns total count of interactions - ByInteractionType: Groups by type (hydrogen bond, salt bridge, etc.) - ByInteractionTypeAndResidueType: Groups by type and residue (e.g., HBond_ALA) - ByInteractionTypeAndAtomTypes: Groups by type and atom types involved - ByInteractionTypeAndResidueTypeAndBBorSC: Groups by type, residue and backbone/sidechain - ByInteractionTypeAndResidueTypeAndNumber: Groups by type, residue and residue number - ByEverything: Creates unique key for each unique interaction property combination

Returns:

A dictionary where keys are interaction descriptors based on the specified level and values are the counts of those interactions. For example: - ByTotalInteractions: {‘TotalInteractions’: 5} - ByInteractionType: {‘HydrogenBond’: 2, ‘SaltBridge’: 3} - ByInteractionTypeAndResidueType: {‘HydrogenBond_ALA’: 1, ‘HydrogenBond_SER’: 1}

Return type:

dict

Raises:

ValueError – If an invalid FingerprintLevel is provided.