具有周期边界条件的DBSCAN python



我正在尝试使用sklearn.cluster.DBSCAN sklearn.cluster.DBSCAN来分析2D网格中的集群。http://scikit-learn.org/stable/modules/generated/sklearn.cluster.DBSCAN.html#sklearn.cluster.DBSCAN但是我遇到了一个问题,即没有实现跨周期边界条件的聚类。

有谁知道将周期性边界条件考虑在内的实现吗?或者如何实现它?

不需要为此修改DBSCAN。

使用你自己的距离函数,而不是欧氏距离。

在那里你可以很容易地实现你的周期性边界条件

您可以添加额外的维度来强制执行周期性边界条件。假设我想使用DBSCAN在极坐标中根据角度(θ)提取点。如果我在[θ]上运行DBSCAN,点1度和359度不会聚集在一起。然而,如果我在[sin(θ), cos(θ)]上运行DBSCAN,这就解决了问题。

最新更新