boston房价决策树
时间: 2023-12-26 18:05:55 浏览: 32
决策树是一种常用的机器学习算法,用于解决分类和回归问题。在sklearn中,可以使用决策树算法构建一个预测波士顿房价的模型。下面是一个演示决策树在波士顿房价数据集上的应用:
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeRegressor
from sklearn import tree
import graphviz
# 加载波士顿房价数据集
boston = load_boston()
X = boston.data
y = boston.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 构建决策树模型
model = DecisionTreeRegressor(max_depth=3, max_leaf_nodes=5)
model.fit(X_train, y_train)
# 可视化决策树
dot_data = tree.export_graphviz(model, out_file=None, feature_names=boston.feature_names)
graph = graphviz.Source(dot_data)
graph.render("boston_decision_tree")
# 预测测试集
y_pred = model.predict(X_test)
# 输出预测结果
print("预测结果:", y_pred)
```
这段代码首先加载了波士顿房价数据集,然后将数据集划分为训练集和测试集。接下来,使用`DecisionTreeRegressor`类构建了一个决策树模型,并设置了最大深度和最大叶子节点数。然后,使用训练集对模型进行训练,并使用测试集进行预测。最后,使用`graphviz`模块将决策树可视化,并输出预测结果。