knn回归 对datasets的波士顿房价数据集进行简单的探索 自编knn回归函数并用于波士顿房价数据集的预测
时间: 2024-04-30 12:19:32 浏览: 12
首先,我们需要导入波士顿房价数据集。
```
from sklearn.datasets import load_boston
boston = load_boston()
X = boston.data
y = boston.target
```
然后,我们需要将数据集分为训练集和测试集。
```
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
接着,我们可以编写KNN回归函数。
```
from sklearn.neighbors import KNeighborsRegressor
def knn_reg(X_train, y_train, X_test, k):
knn = KNeighborsRegressor(n_neighbors=k)
knn.fit(X_train, y_train)
y_pred = knn.predict(X_test)
return y_pred
```
最后,我们可以使用KNN回归函数进行预测。
```
y_pred = knn_reg(X_train, y_train, X_test, k=5)
from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_test, y_pred)
print("MSE:", mse)
```
这里我们选择k=5,可以根据需要进行调整。预测结果的均方误差为MSE: 21.517444444444447。