数据分享|Python在Scikit-Learn可视化随机森林中的决策树分析房价数据

简介: 数据分享|Python在Scikit-Learn可视化随机森林中的决策树分析房价数据

原文链接:http://tecdat.cn/?p=27050 


随机森林是决策树的集合。在这篇文章中,我将向您展示如何从随机森林中可视化决策树。


首先让我们在房价数据集查看文末了解数据获取方式上训练随机森林模型。

加载数据并训练随机森林。

X = pd.DataFrame(data, columns=feature_names)

让我们将森林中的树数设置为 100:

RandomForestRegressor(n_estimators=100)

决策树存储在 模型list 中的 estimators_ 属性中 rf 。我们可以检查列表的长度,它应该等于 n_estiamtors 值。

len(estimators_)>>> 100

我们可以从随机森林中绘制第一棵决策树( 0 列表中有索引):

plot\_tree(rf.estimators\_\[0\])

这棵树太大,无法在一个图中将其可视化。


点击标题查阅往期内容


【视频】从决策树到随机森林:R语言信用卡违约分析信贷数据实例|数据分享


01

02

03

04

让我们检查随机森林中第一棵树的深度:

tree_.max_depth>>> 16

我们的第一棵树有 max_depth=16. 其他树也有类似的深度。为了使可视化具有可读性,最好限制树的深度。让我们再次训练随机森林 max_depth=3

第一个决策树的可视化图:

plot\_tree(rf.estimators\_\[0\])

我们可以可视化第一个决策树:

viz

概括


我将向您展示如何可视化随机森林中的单个决策树。可以通过 estimators_ 列表中的整数索引访问树。有时当树太深时,值得用 max_depth 超参数限制树的深度。

相关文章
|
1天前
|
存储 数据挖掘 Python
使用Python集合高效统计Excel数据
使用Python集合高效统计Excel数据
13 7
|
1天前
|
数据可视化 Python
Python中的数据可视化:在数据点上添加标签
Python中的数据可视化:在数据点上添加标签
14 3
|
5天前
|
机器学习/深度学习 自然语言处理 数据可视化
文本挖掘与可视化:生成个性化词云的Python实践【7个案例】
词云(Word Cloud),又称为文字云或标签云,是一种用于文本数据可视化的技术,通过不同大小、颜色和字体展示文本中单词的出现频率或重要性。在词云中,更频繁出现的单词会显示得更大,反之则更小。
|
4天前
|
机器学习/深度学习 算法 索引
Python梯度提升决策树的方法示例
本文简要介绍了Python梯度提升决策树的方法示例,包括鸢尾花(Iris)数据集进行分类、房价预测(回归)、垃圾邮件分类、特征选择等示例。
8 0
|
4天前
|
数据可视化
Seaborn 可视化(三)
Seaborn的pairplot用于多变量数据可视化,但上半部分与下半部分重复。可通过PairGrid手动定制,如示例所示,用regplot和kdeplot分别绘制对角线以上和以下的图,histplot画对角线。hue参数增强可视化,比如在violinplot和lmplot中按性别着色,展示不同类别。还能通过点的大小和形状(如markers参数)添加信息。Seaborn提供darkgrid等5种样式,用sns.set_style切换。
|
4天前
|
数据可视化 Python
Seaborn 可视化(二)
Seaborn教程展示了如何用`jointplot`创建蜂巢图,以及使用`matplotlib`的`hexbin`函数绘制2D核密度图。此外,它还介绍了2D核密度图,强调其在展示两个变量联合分布上的作用。条形图、箱线图和小提琴图也被讨论,其中箱线图揭示了数据的统计特性,而小提琴图结合了箱线图和核密度图的信息。`pairplot`函数用于可视化数据集中所有变量之间的两两关系。每种图表类型都配有示例图像。
|
4天前
|
数据可视化 数据挖掘 API
Seaborn 可视化(一)
Seaborn是Python的一个基于matplotlib的统计图形库,提供交互式界面,便于创建吸引人的统计图表。它与Pandas集成良好,支持直接使用DataFrame数据进行绘图。Seaborn能绘制直方图(distplot)、密度图(核密度估计)、条形图(计数图)以及散点图(regplot、lmplot、jointplot),适用于单变量和双变量数据分析,如展示分布、关系和趋势。例如,`sns.distplot()`用于直方图,`sns.lmplot()`和`sns.jointplot()`则用于绘制散点图并可添加回归线。
|
5天前
|
存储 算法 Shell
python常用算法(5)——树,二叉树与AVL树(三)
python常用算法(5)——树,二叉树与AVL树
|
1月前
|
传感器 数据可视化 BI
python研究汽车传感器数据统计可视化分析
python研究汽车传感器数据统计可视化分析
|
1月前
|
数据可视化 数据处理 索引
Python用GARCH对ADBL股票价格时间序列趋势滚动预测、损失、可视化分析
Python用GARCH对ADBL股票价格时间序列趋势滚动预测、损失、可视化分析