agentsclimarketplace

Custom distance metrics

Skill cxcscmu/SkillLearnBench/skills/b1-one-shot-gemini-3.1-pro-preview/dbscan-parameter-tuning/custom-distance-metrics

Custom distance metric implementation for use with clustering algorithms like DBSCAN.From its SKILL.md

Install
npx -y skills add cxcscmu/SkillLearnBench --skill custom-distance-metrics

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

0.9 KB, 223 tokens by cl100k_base, as published. Nobody here has run it

Custom Distance Metrics for Scikit-Learn

When clustering spatial data, you often want to weigh dimensions differently or apply a non-standard metric.

Usage

You can implement custom metrics in sklearn or scipy. Scikit-learn's DBSCAN allows a custom distance metric passed as a callable.

Example:

import numpy as np
from sklearn.cluster import DBSCAN

def custom_metric(x, y, weight=1.0):
    dx = x[0] - y[0]
    dy = x[1] - y[1]
    return np.sqrt((weight * dx)**2 + ((2 - weight) * dy)**2)

# Usage in DBSCAN
dbscan = DBSCAN(eps=5, min_samples=3, metric=custom_metric, metric_params={'weight': 1.5})
clusters = dbscan.fit_predict(data)

Alternatively, for performance, precompute the distance matrix or use cdist/pdist with custom metrics if needed, but the callable approach is simplest.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.