Как да използваме правилно алгоритъма kNN Scikit-Learn?

Ето как да прехвърля ТОВА на моите данни? Виждам къде трябва да бъдат заменени селекцията и класовете, но къде е новият елемент за селекция?

>>> от sklearn.neighbors import Най-близките съседи
>>> импортиране на numpy като np
>>> X = np.array ([[- 1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2 ]])
>>> nbrs = Най-близки съседи (n_neighbors = 2, алгоритъм = 'ball_tree'). fit (X)
>>> разстояния, индекси = nbrs.kneighbors (X)
>>> индекси
масив ([[0, 1],
[десет],
[2, 1],
[3, 4],
[4, 3],
[5, 4]]. )
>>> разстояния
масив ([[0., 1.],
[0., 1.],
[0., 1.41421356],
[0., 1.],
[0., 1.],
[0., 1.41421356]])

Вече видях статията, не се различава много от документацията. Имам матрица функции и набор от класове. Трябва да дефинирам класа на нов елемент.

В моя алгоритъм:
1. Изчисляване на разстоянието между всеки елемент от матрицата на характеристиките и новия елемент.
2. Сортиране на разстояния във възходящ ред.
3. Създайте масив от "популярност" на класовете.
4) изтрийте масива в низходящ ред
5) вземете най-популярния клас и го присвойте на нов елемент.

Как да направите същото с просто scikit-learn?

Vlad_Fedorenko: Всичко изглежда работи, благодаря! Само тук грешката изскача (показва всичко правилно)

Това се случва, когато използвам float данни, всичко работи добре с int.

DeprecationWarning: Предаването на 1d масиви като данни е оттеглено в 0.17 и ще повиши ValueError в 0.19. Преоформете данните си или с помощта на X.reshape (-1, 1), ако вашите данни имат една функция, или X.reshape (1, -1), ако съдържат една проба.

Тествах го по различни начини, не можах да се отърва от него.