首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于DBSCAN的轨迹聚类

基于DBSCAN的轨迹聚类
EN

Stack Overflow用户
提问于 2020-05-09 10:30:59
回答 1查看 1.3K关注 0票数 1

我在试着找出轨迹上的路径。我有一个长点长点的轨迹。

这是我的代码:

代码语言:javascript
复制
def clustersDBSCAN(data):
    from sklearn.cluster import DBSCAN
    a=data
    coords = a['Long']
    coords['Lat'] = a['Lat']
    coords = coords.to_numpy(coords)
    kms_per_radian = 6371.0088
    epsilon = 0.02 / kms_per_radian
    db = DBSCAN(eps=epsilon, min_samples=1, algorithm='ball_tree', metric='haversine').fit(np.radians(coords))
    cluster_labels = db.labels_
    a['clusters']=cluster_labels
    return a

我的enter是一个带有其他变量的DataFrame。当我运行我的过程时,它会导致以下错误:

代码语言:javascript
复制
Traceback (most recent call last):

  File "<ipython-input-160-1bb326319131>", line 19, in <module>
    TestEtude1 = clustersDBSCAN(TestEtude1)

  File "<ipython-input-160-1bb326319131>", line 14, in clustersDBSCAN
    db = DBSCAN(eps=epsilon, min_samples=1, algorithm='ball_tree', metric='haversine').fit(np.radians(coords))

TypeError: loop of ufunc does not support argument 0 of type float which has no callable radians method

编辑

我的数据如下:

代码语言:javascript
复制
Lat Long    Type de point
136701  53.87030526540526   7.305133353275677       1
136702  53.870307858385225  7.305140443133933       0
136703  53.87031363700621   7.305150308822018       0
136704  53.87031595061333   7.305142298625614       0
136705  53.87032064860515   7.305141557055512       0
136706  53.870326088345934  7.305156457965349       2
136707  53.87030945094248   7.305160487693352       1
136708  53.870349819652134  7.305194852863318       0
136709  53.870340745293994  7.305186559915658       0
136710  53.8702835623423    7.305181727204434       0

点1的类型是指轨道的起源,第2点的类型是指轨道的末端。在1到2之间,有0种类型的点点,它们是我的中间点,按时间点排序。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-09 14:37:56

数据的特征包括纬度和经度。因为它是熊猫数据,所以在这种情况下,您可以切分您想要用于执行集群的特性。

查看代码,可以看到正在传递的特性是不正确的,您可以执行以下操作:

np.radians(coords)中用np.radians(data[["Lat","Long"]])替换fit(),它应该可以工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61695284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档