计算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:列表索引必须是整数,而不是列表
谢谢!
最佳答案
这是一个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数组仍然是首选的数据格式;为了方便起见,可以使用列表列表,但会在内部进行转换。
关于python - scikit-learn包中DBSCAN函数的输入格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24787528/