我将 R 与包kernlab / caret一起使用,并使用 SVM ( ksvm) 进行一些分析。我正在使用基于径向的内核进行分类。
我有一些分类变量被设置为 R 中的因子,因此它们在内部表示为不同的整数。
假设对于具有 3 个级别的分类变量,我可以不理会它,SVM 会自动处理这个问题:级别 1、2、3。或者我是否必须将它们虚拟编码到两列,如下所示:
x0 x1
0 0 = level 1
0 1 = level 2
1 0 = level 3
ETC?
我查看了文档,如果您使用公式接口(我这样做),那么它会自动处理:
“如果预测变量包含因子,则必须使用公式接口才能得到正确的模型矩阵。”
这是否意味着只要我使用公式界面“虚拟编码”就会在幕后发生?