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语言代码)

R语言实战应用精讲50篇(三十一)-R语言入门系列-tidyverse数据分析流程

R语言实战应用精讲50篇(十六)--如何实现文字云可视化

R语言实战应用精讲50篇(二十四)-贝叶斯定理及R语言实现