當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn KNeighborsTransformer.kneighbors用法及代碼示例


本文簡要介紹python語言中 sklearn.neighbors.KNeighborsTransformer.kneighbors 的用法。

用法:

kneighbors(X=None, n_neighbors=None, return_distance=True)

找到一個點的K-neighbors。

返回每個點的鄰居的索引和距離。

參數

X類似數組,形狀 (n_queries, n_features) 或 (n_queries, n_indexed) 如果 metric == ‘precomputed’,默認=無

查詢點或點。如果未提供,則返回每個索引點的鄰居。在這種情況下,查詢點不被認為是它自己的鄰居。

n_neighbors整數,默認=無

每個樣本所需的鄰居數。默認值是傳遞給構造函數的值。

return_distance布爾,默認=真

是否返回距離。

返回

neigh_distndarray 形狀(n_queries,n_neighbors)

表示點長度的數組,僅在return_distance=True 時出現。

neigh_indndarray 形狀(n_queries,n_neighbors)

人口矩陣中最近點的索引。

例子

在下麵的示例中,我們從表示數據集的數組構造一個 NearestNeighbors 類,並詢問誰是最接近 [1,1,1] 的點

>>> samples = [[0., 0., 0.], [0., .5, 0.], [1., 1., .5]]
>>> from sklearn.neighbors import NearestNeighbors
>>> neigh = NearestNeighbors(n_neighbors=1)
>>> neigh.fit(samples)
NearestNeighbors(n_neighbors=1)
>>> print(neigh.kneighbors([[1., 1., 1.]]))
(array([[0.5]]), array([[2]]))

如您所見,它返回 [[0.5]] 和 [[2]],這意味著該元素的距離為 0.5,並且是樣本的第三個元素(索引從 0 開始)。您還可以查詢多個點:

>>> X = [[0., 1., 0.], [1., 0., 1.]]
>>> neigh.kneighbors(X, return_distance=False)
array([[1],
       [2]]...)

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.neighbors.KNeighborsTransformer.kneighbors。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。