计算DBSCAN

db = DBSCAN(eps=0.3, min_samples=10).fit(X)


上面是使用scikit-learn软件包计算DBSCAN的示例代码。
我自己的输入格式如下:
[[37.9358,-122.3478],[33.8312,-117.6053]]。

示例输入格式如下:
[[0.84022039 1.14802236]
 [-1.15474834 -1.2041171]]

我创建自己的格式的方法是使用附加操作构造列表列表。
样本格式的结构是什么,如何构造?
我遇到的错误消息是:
TypeError:列表索引必须是整数,而不是列表

谢谢!

最佳答案

这是一个bugDBSCAN.fit应该接受列表列表,但不是,因此必须使用NumPy数组(*):

X = np.array([[37.9358, -122.3478], [33.8312, -117.6053]])
db = DBSCAN(eps=0.3, min_samples=10).fit(X)


效果很好。

(*)NumPy数组仍然是首选的数据格式;为了方便起见,可以使用列表列表,但会在内部进行转换。

关于python - scikit-learn包中DBSCAN函数的输入格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24787528/

10-12 20:00