R语言 使用随机森林包绘制变量重要性图

R语言 使用随机森林包绘制变量重要性图

顾名思义,变量重要性图是一个使用随机森林包来绘制基于其准确性和基尼系数的图表。如果变量的准确性高,那么它就能准确地对数据进行分类,而基尼系数是以随机森林中节点的均匀性来衡量的。而平均减少的准确率和平均减少的基尼系数是成正比的。

使用R中的随机森林包绘制变量重要性图

第1步: 安装并加载所需的包。

install.packages("randomForest")
library(randomForest)
R

第2步: 加载虹膜数据集。

data(iris)
iris
R

输出

Sepal.Length Sepal.Width Petal.Length Petal.Width    Species
1            5.1         3.5          1.4         0.2     setosa
2            4.9         3.0          1.4         0.2     setosa
3            4.7         3.2          1.3         0.2     setosa
4            4.6         3.1          1.5         0.2     setosa
5            5.0         3.6          1.4         0.2     setosa
R

第3步: 接下来我们要根据多棵决策树得到的结果,使用 randomForest() 函数对数据集进行分类。

语法: randomForest(data,subset,ntree,keep.forest,importance,proximity)

其中

  • data – 需要分类的数据框
  • subset – 该数据框的列/行应被用于分类
  • ntree – 这里指定要生长的树的数量
  • keep.forest – 如果需要在输出对象中保留森林,则设置为TRUE。
  • importance – 如果要根据重要性来评估预测因子,则设置为TRUE,否则为FALSE
  • proximity – 如果要考虑行的接近度,设置为TRUE。
rand_frst <- randomForest(iris, data=iris, ntree=100, keep.forest=FALSE,
                          importance=TRUE)
R

第4步:最后,使用varImpPlot()函数,我们将绘制图形。

语法:varImpPlot(x,sort,main)

其中

  • x – 这里指定了随机森林类的对象
  • sort – 这里指定了变量的排序顺序(默认为TRUE)
  • main – 这里指定了绘图的标题
randomForest::varImpPlot(rand_frst,
                         sort=FALSE,
                         main="Variable Importance Plot")
R

输出

在R中使用随机森林包绘制变量重要性图

虹膜数据集的变量重要性图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程