初级
Boston数据集决策树回归
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
import pandas as pd
import numpy as np
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import GridSearchCV, train_test_split
from sklearn.metrics import mean_squared_error
data_url = "http://lib.stat.cmu.edu/datasets/boston"
raw_df = pd.read_csv(data_url, sep="\\s+", skiprows=22, header=None)
data = np.hstack([raw_df.values[::2, :], raw_df.values[1::2, :2]])
target = raw_df.values[1::2, 2]
boston = pd.DataFrame(data, columns=['CRIM','ZN','INDUS','CHAS','NOX','RM','AGE','DIS','RAD','TAX','PTRATIO','B','LSTAT'])
boston['MEDV'] = target
X = boston.drop('MEDV', axis=1)
y = boston['MEDV']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=1)
param_grid = {'max_depth': range(1, 11)}
tree = DecisionTreeRegressor(random_state=1)
grid = GridSearchCV(tree, param_grid, cv=5, scoring='neg_mean_squared_error')
grid.fit(X_train, y_train)
print('最优max_depth:', grid.best_params_['max_depth'])
print('最优模型测试MSE:', mean_squared_error(y_test, grid.predict(X_test)))
示例
输入
solve()
期望输出
最优max_depth: 5 最优模型测试MSE: 20.39690995157865
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199