我正在使用Sander等人。 1998 确定MinPts和epsilon在我的数据集上使用DBSCAN。 正如桑德斯(Sanders)等人所建议的那样,分钟数= dim * 2-1 = k(在我的情况下为9维->分钟数= k = 17)。 在本文中,应该选择“第一谷”。我可以看到两个山谷,但是第一个是哪个?您会为epsilon选择什么价值? kdistplot_with_duplicates
由于桑德斯(Sanders)还建议,只有在没有重复项的情况下才应使用此方法,没有重复项的情况应使用:(尽管我认为在这种情况下应该没有关系) kdistplot_without_duplicates。 哪个谷应该被认为是“第一个”谷?
使用的代码:
ns = 17
nbrs = NearestNeighbors(n_neighbors=ns,metric='euclidean').fit(data)
distances,indices = nbrs.kneighbors(data)
distanceDec = sorted(distances[:,ns-1],reverse=True)
plt.plot(list(range(1,683+1)),distanceDec)