Skip to contents

This scalar predicate reads the same conversion table as precise_transform. It is intended for programmatic planning by a human or agent before calling precise_transform(to = "distance").

Usage

pd_convertible_to_distance(metric, type, family)

Arguments

metric

Canonical registry metric name, or NA_character_ for a custom/unknown metric.

type

Native output type: "distance", "similarity", "correlation", "affinity", or NA_character_.

family

Registry family for the metric, or NA_character_.

Value

TRUE when the measure has a built-in distance conversion, otherwise FALSE. Generic similarity conversion additionally requires matrix values in [0, 1], which is checked by precise_transform() at execution time.

Examples

pd_convertible_to_distance("cosine", "similarity", "inner_product")
#> [1] TRUE
pd_convertible_to_distance("tsne_5", "affinity", "tsne")
#> [1] FALSE