from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split,GridSearchCV
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
data = load_iris()
x_train,x_test,y_train,y_test = train_test_split(data.data,data.target,random_state=6,test_size=10)
transfer = StandardScaler()
x_train = transfer.fit_transform(x_train)
x_test = transfer.transform(x_test)
estimator = KNeighborsClassifier()
param_dict = {"n_neighbors":range(1,50)}
estimator = GridSearchCV(estimator,param_grid=param_dict,cv=10)
estimator.fit(x_train,y_train)
y_predict = estimator.predict(x_test)
print("比对真实值和预测值:",y_test == y_predict)
score = estimator.score(x_test,y_test)
print("准确率为:",score)
print("最佳参数:",estimator.best_params_)
print("最佳结果:",estimator.best_score_)
print("最佳索引:",estimator.best_index_)
print("最佳预估器:",estimator.best_estimator_)