前言:
我根据自己的科研方向和实际工作,在利用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/
关于这段代码,你有什么想法或者问题,请扫码加我微信,大家交流和讨论。