R语言实战应用精讲50篇(三十)-R语言实现支持向量机(附R语言代码)
Posted 文宇肃然
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言实战应用精讲50篇(三十)-R语言实现支持向量机(附R语言代码)相关的知识,希望对你有一定的参考价值。
支持向量机回归
以下是构建公式、构建svm回归模型、输出模型概况的代码。主要是采用as.formula将因变量、自变量拼接到一起构建为公式,然后采用e1071包的svm函数训练支持向量机模型,其中核函数采用高斯核。
# 因变量自变量构建公式
colnames(boston)
form_reg <- as.formula(
paste0("medv ~ ", paste(colnames(traindata)[1:13], collapse = " + "))
)
form_reg
# 训练模型
fit_svm_reg <- svm(form_reg,
data = traindata,
kernel = "radial",
cost = 1,
gamma = 0.1)
# 模型概况
fit_svm_reg
支持向量机二分类
与回归类似,首先是构建公式,然后用e1071包的svm函数训练支持向量机模型。traindata中的因变量需要提前处理成factor类型,这样svm会自动构建分类模型。为了预测分类概率,需要在svm中将probability参数值设置为TRUE。
# 因变量自变量构建公式
colnames(Heart)
form_cls <- as.formula(
paste0("AHD ~ ", paste(colnames(traindata)[2:14], collapse = " + "))
)
form_cls
# 构建模型
fit_svm_cls <- svm(form_cls,
data
以上是关于R语言实战应用精讲50篇(三十)-R语言实现支持向量机(附R语言代码)的主要内容,如果未能解决你的问题,请参考以下文章
R语言实战应用精讲50篇(三十二)-R语言实现单变量时间序列(附R语言代码)
R语言实战应用精讲50篇(三十五)-R语言实现xgboost回归(附R语言代码)
R语言实战应用精讲50篇(三十三)-R-circlize包应用案例详解(附R语言代码)