NearestNeighbors()返回错误的序列

时间:2019-05-07 18:24:05

标签: python scikit-learn nearest-neighbor

我正在使用NearestNeighbors()库中的sklean.neighbors来处理117*12矩阵。我正在看索引2D数组。第一个元素indices[i][0]应该是节点本身。但是,在某些元素上,该序列被其邻居替换。我想知道如何防止这种情况发生。

这是返回的索引的示例。

 [ 63 113  59  52  15]
 [ 64  35  14  12  66]
 [100  76  65  49  32]
 [ 66  12  14  35  64]
 [ 67   8 112  11  47]
 [ 68  92 104  80  66]
 [ 69  63  52  59 113]
 [ 70  60 107   7  27]
 [ 71  33  93  78  97]
 [ 72  45 116  30  99]
 [ 73  97   7  62  94]
 [ 74  46  90  79 115]
 [ 75 108  82  10  26]
 [100  76  65  49  32]
 [ 77   6  27  50   7]
 [ 78  93  97  62  73]

1 个答案:

答案 0 :(得分:0)

在给定索引处的样本完全相等时会发生这种情况。因此,在您的情况下:

X[65] = X[76] = X[100]

假设X为数据。

在这种情况下,然后在内部确定顺序。如您所见,将保持该顺序:

...
[100  76  65  49  32]
...
...
[100  76  65  49  32]
...