Python 使用不同距离对长/横向点进行聚类
我希望能够对long/lat点进行集群,其中每个long/lat点都有一个不同的可达半径,不应该违反这个半径 假设您有一个long/lat对作为起点x,可达半径为R1,我希望能够创建一个大小为Z的集群,其中包括起点。此外,作为该集群候选点的每个点都不应违反其可达半径 这意味着,即使点y在点x的可达性半径范围内,如果其可达性半径无法到达点x,则不应将其包括在内 我原以为我会残忍地执行这个,但这不是很有效(指数)。因此,我研究了DBSCAN算法,但它似乎不能解决我的问题,因为ε/距离是固定的 是否有我遗漏的任何明显的解决方案/算法,或者这只是有效的解决方案/算法Python 使用不同距离对长/横向点进行聚类,python,cluster-analysis,dbscan,Python,Cluster Analysis,Dbscan,我希望能够对long/lat点进行集群,其中每个long/lat点都有一个不同的可达半径,不应该违反这个半径 假设您有一个long/lat对作为起点x,可达半径为R1,我希望能够创建一个大小为Z的集群,其中包括起点。此外,作为该集群候选点的每个点都不应违反其可达半径 这意味着,即使点y在点x的可达性半径范围内,如果其可达性半径无法到达点x,则不应将其包括在内 我原以为我会残忍地执行这个,但这不是很有效(指数)。因此,我研究了DBSCAN算法,但它似乎不能解决我的问题,因为ε/距离是固定的 是否有
提前感谢。DBSCAN的适应性非常强。有关讨论,请参阅方法通用DBSCAN。本质上,您可以定义一个邻居谓词,例如“两者都是可相互访问的”,然后使用修改后的邻居运行DBSCAN
此外,您可能希望研究光学和HDBSCAN*,两者都比DBSCAN有所改进。您是否尝试使用DBSCAN,方法是更改通过检查返回给定点的相邻点的函数(即,鉴于两点之间关联的可达性,应存在对称可达性),用eps代替支票?这确实是个好主意。此外,在考虑之前,还应验证是否可以达到起点,否则这只是噪音。