10000 dbscan does not accepts distance 'seuclidean' · Issue #4520 · scikit-learn/scikit-learn · GitHub
[go: up one dir, main page]

Skip to content
dbscan does not accepts distance 'seuclidean' #4520
Closed
@debunge

Description

@debunge

Here is a quick example:

dist = 'seuclidean' 
    D = pairwise_distances(X[:400,:], metric = dist )
    D = np.nan_to_num(D)
    eps = np.percentile(D, 0.6)
    print eps
    dscan = DBSCAN(eps=eps, min_samples=5, metric = dist)
    y = dscan.fit_predict(X)
  File "cluster.py", line 91, in cluster
    y = dscan.fit_predict(X)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/base.py", line 345, in fit_predict
    self.fit(X)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/cluster/dbscan_.py", line 248, in fit
    clust = dbscan(X, **self.get_params())
  File "/usr/local/lib/python2.7/dist-packages/sklearn/cluster/dbscan_.py", line 101, in dbscan
    neighbors_model.fit(X)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/neighbors/base.py", line 661, in fit
    return self._fit(X)
  File "/usr/local/lib/python2.7/dist-packages/sklearn/neighbors/base.py", line 234, in _fit
    **self.effective_metric_params_)
  File "binary_tree.pxi", line 1062, in sklearn.neighbors.ball_tree.BinaryTree.__init__ (sklearn/neighbors/ball_tree.c:8037)
  File "dist_metrics.pyx", line 280, in sklearn.neighbors.dist_metrics.DistanceMetric.get_metric (sklearn/neighbors/dist_metrics.c:4066)
  File "dist_metrics.pyx", line 435, in sklearn.neighbors.dist_metrics.SEuclideanDistance.__init__ (sklearn/neighbors/dist_metrics.c:5414)
TypeError: __init__() takes exactly 1 positional argument (0 given)

If I calculate distance matrix with it, the everything is just fine, but I want to use kd_tree or something to speed things up.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0