如何在R中绘制SVM的分类图
machine-learning
r
svm
6
0

我在R中有一个SVM,现在我想绘制这台机器的分类空间。我在Internet上找到了一些示例,但是我似乎无法理解它们。

我的R脚本如下:

library(e1071)
day_of_week <- c(0,1,2,3,4,5,6)
holiday <- factor( c(T, F, F, F, F, F, T) )
model <- svm(day_of_week, holiday)
plot(model, day_of_week, holiday)

我无法使plot命令起作用。我想要一个像这样的图http://bm2.genes.nig.ac.jp/RGM2/R_current/library/e1071/man/images/plot.svm_001.png

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

另外,您可以使用kernlab软件包:

library(kernlab)

model.ksvm = ksvm(happy ~ day + weather, data = d, type="C-svc")
plot(model.ksvm, data=d)
收藏
评论

首先, plot.svm函数假定数据在两个维度上都不同。您在示例中使用的数据只是一维的,因此决策边界必须画在一条线上,这是不受支持的。其次,该函数似乎需要一个数据框作为输入,并且您正在使用向量。

这应该工作...

library(e1071)

day = c(0,1,2,3,4,5,6)
weather = c(1,0,0,0,0,0,0)
happy = factor(c(T,F,F,F,F,F,F))

d = data.frame(day=day, weather=weather, happy=happy)
model = svm(happy ~ day + weather, data = d)
plot(model, d)
收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号