knn_3
start
knn主要用于分类问题,不过也可以用于回归
import numpy as np
import pandas as pd
from pandas import Series,DataFrame
import matplotlib.pyplot as plt
from sklearn.neighbors import KNeighborsRegressor
from sklearn.model_selection import train_test_split
from sklearn import datasets
从datasets中载入boston房价数据集,通过各项数据预测房价
boston = datasets.load_boston()
X = boston['data']
y = boston['target']
X = 10 * (X - X.min())/(X.max() - X.min())
x_train,x_test,y_train,y_test = train_test_split(X,y,test_size = 0.2)
knn = KNeighborsRegressor()
knn.fit(x_train,y_train)
y_ = knn.predict(x_test)
knn.score(x_test,y_test) # 0.45727617062811354 准确率比较低
x = np.linspace(0,len(x_test),len(y_test))
plt.scatter(x,y_test,color='red')
plt.scatter(x,y_,color='green')