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)#真實特征值