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:list indices必须是整数,而不是list
谢谢!
答案 0 :(得分:2)
这是bug:DBSCAN.fit
应接受列表列表,但事实并非如此,因此您必须使用NumPy数组(*):
X = np.array([[37.9358, -122.3478], [33.8312, -117.6053]])
db = DBSCAN(eps=0.3, min_samples=10).fit(X)
工作正常。
(*)NumPy数组无论如何都是首选的数据格式;列表列表被接受为方便,但将在内部转换。