from sklearn import datasets #引入数据集,sklearn包含众多数据集,其中本次用到的是工具箱自带的鸢尾花的数据集
from sklearn.model_selection import train_test_split #建立模型前,需要将数据分为测试集和训练集
from sklearn.neighbors import KNeighborsClassifier #利用K邻近方法训练数据
###如果一个样本在特征空间中的K个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别###
###引入数据###
iris=datasets.load_iris() #引入iris鸢尾花数据,iris数据包含4个特征变量
iris_X=iris.data #特征变量,记录了不同品种鸢尾花的特征信息
iris_y=iris.target #目标值,对应鸢尾花分到的类别
X_train,X_test,y_train,y_test=train_test_split(iris_X,iris_y,test_size=0.3)#利用train_test_split进行将训练集和测试集进行分开,test_size占30%
print(y_train)#我们看到训练数据的特征值分为3类
###训练数据###
knn=KNeighborsClassifier()#引入训练方法
knn.fit(X_train,y_train) #使用测试数据进行拟合训练
###预测数据###
print(knn.predict(X_test))#预测测试集特征
print(y_test)#真实特征值