R代码|基于特征重要性的特征排序代码

前言:

我根据自己的科研方向和实际工作,在利用R语言解决数据,特征和模型三方面的问题时,会搜集到一些R代码,利用【R语言】公众号将其整理和归总,分享给大家。一方面,希望这些R代码能够对大家解决实际问题有帮助或者启示;另一方面,也希望大家尝试从R代码中学习和应用R语言。


基于特征重要性的特征排序代码。

这个代码可以用于指导特征选择,特征选择的策略:

1)Top-N策略;2)Top-percent策略。


# 导入R库
library(mlbench)
library(caret)

# 加载数据集
data(PimaIndiansDiabetes)

# 设置训练的控制参数,利用10-折交叉验证的方法
control <- trainControl(method="cv", number=10)

# 训练模型
model <- train(diabetes~., data=PimaIndiansDiabetes, method="lvq", preProcess="scale", trControl=control)

# 评估变量的变量重要性
importance <- varImp(model, scale=FALSE)

# 重要性描述结果
print(importance)

# 重要性可视化
plot(importance)

结果和可视化如下:

# load the libraries
library(mlbench)
library(caret)

# load the dataset
data(iris)

# prepare training scheme
control <- trainControl(method="cv", number=10)

# train the model
model <- train(Species~., data=iris, method="lvq", preProcess="scale", trControl=control)

# estimate variable importance
importance <- varImp(model, scale=FALSE)

# summarize importance
print(importance)

# plot importance
plot(importance)

结果和可视化如下:

代码源自:

https://setscholars.net/2019/10/25/how-to-rank-feature-with-importance-in-r-feature-selection-in-r/

关于这段代码,你有什么想法或者问题,请扫码加我微信,大家交流和讨论。

原文地址:https://www.cnblogs.com/purple5252/p/13859270.html