初级
Carseats数据集决策树剪枝
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.metrics import accuracy_score
carseats = pd.read_csv('https://liangdaima.com/static/data/statistics/Carseats.csv')
carseats['High'] = (carseats['Sales'] > 8).astype(int)
carseats = pd.get_dummies(carseats, columns=['ShelveLoc', 'Urban', 'US'], drop_first=True)
X = carseats.drop(['Sales', 'High'], axis=1)
y = carseats['High']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=1)
param_grid = {'max_depth': range(1, 11), 'min_samples_leaf': [5, 10, 20]}
grid = GridSearchCV(DecisionTreeClassifier(random_state=1), param_grid, cv=5)
grid.fit(X_train, y_train)
print('最优参数:', grid.best_params_)
print('测试准确率:', accuracy_score(y_test, grid.predict(X_test)))
示例
输入
solve()
期望输出
最优参数: {'max_depth': 7, 'min_samples_leaf': 10}
测试准确率: 0.7416666666666667
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199