Да, да, вы можете. Это становится тривиальным с библиотекой панд. Сначала вам нужно import pandas
, затем с помощью следующего кода вы можете преобразовать свой список списков в кадр данных pandas:
df = DataFrame(a, columns=headers)
тогда вы можете настроить тренировочный набор с помощью:
X_train, y_train = df['value1'], df['value2']
Ваш столбец value2
должен содержать метки для работы классификатора. Ярлыки не могут иметь тип float для классификаторов KNN, поэтому простая настройка их на целые числа решит проблему.
a = [[0.063807299, 71, 0.00071],
[0.363262854, 7, 0.0007],
[0.836344317, 76, 0.00076]]
lab_enc = preprocessing.LabelEncoder()
df = DataFrame(a)
df.columns = ['value1', 'value2', 'result']
X_train, y_train = df['value1'].values.reshape(-1,1), df['value2'].values.reshape(-1,1)
knn = KNeighborsClassifier(n_neighbors=2)
knn.fit(X_train, y_train.ravel())
knn.score(X_train, y_train)
print(knn.predict([[0.7]]))