harbor.pli.plip_analysis_schema.calculate_tversky

harbor.pli.plip_analysis_schema.calculate_tversky(fingerprint1: dict, fingerprint2: dict, alpha: float = 1, beta: float = 0) SimilarityScore[source]

Calculate the Tversky Index between two fingerprints.

The Tversky Index is an asymmetric similarity measure that generalizes several other similarity coefficients: Tversky Index = |A ∩ B| / (|A ∩ B| + α|A - B| + β|B - A|) - For Recall: α=1, β=0 - For Tanimoto Coefficient: α=β=1 - For Dice Coefficient: α=β=0.5

Parameters:
  • fingerprint1 (dict) – Reference fingerprint dictionary with features as keys and counts as values.

  • fingerprint2 (dict) – Query fingerprint dictionary with features as keys and counts as values.

  • alpha (float, optional) – Weight for features unique to fingerprint1 (default=1).

  • beta (float, optional) – Weight for features unique to fingerprint2 (default=0).

Returns:

Object containing the similarity score and additional metrics about the comparison.

Return type:

SimilarityScore