Итак, я использовал KNN для набора данных со значением random_state = 4 на этапе train_test_split. Несмотря на использование случайного состояния, выходные данные точности, отчета о классификации, прогноза и т. Д. Каждый раз различаются. Было интересно, почему это было?
Вот заголовок данных: (прогнозирование позиции на основе all_time_runs и порядка)
order position all_time_runs
0 10 NO BAT 1304
1 2 CAN BAT 7396
2 3 NO BAT 6938
3 6 CAN BAT 4903
4 6 CAN BAT 3761
А вот код для классификации и прогнозирования:
#splitting data into features and target
X = posdf.drop('position',axis=1)
y = posdf['position']
knn = KNeighborsClassifier(n_neighbors = 5)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 42)
#fitting the KNN model
knn.fit(X_train, y_train)
#predicting with the model
prediction = knn.predict(X_test)
#knn score
score = knn.score(X_test, y_test)