【问题标题】:Error in SVM model: Pre-processing methods are limited to: BoxCox, YeoJohnson in RSVM 模型中的错误:预处理方法仅限于:R 中的 BoxCox、YeoJohnson
【发布时间】:2020-10-01 02:35:30
【问题描述】:

我正在尝试运行 SVM 模型,但出现错误:

错误:预处理方法仅限于:BoxCox、YeoJohnson、expoTrans、invHyperbolicSine、center、scale、range、knnImpute、bagImpute、medianImpute、pca、ica、spatialSign、ignore、keep、删除、zv、nzv、conditionalX、corr

我不明白出了什么问题。

svm.model_unigrams = train(outcome ~.
                           , data = training_set_unigrams
                           , trControl = training_controls
                           , method = "svmRadial"
                           , preProcess = (training_set_unigrams, method = c("center", "scale"))
                           , na.action = na.pass)

【问题讨论】:

  • 我得到错误:继承错误(x,“矩阵”):参数“x”丢失,没有默认值
  • preProc = c("center", "scale")替换preProcess(training_set_unigrams, method = c("center", "scale"))

标签: r machine-learning nlp svm r-caret


【解决方案1】:

由于您没有提供任何数据,所以我使用的是 IRIS 数据。

library(caret)
data(iris)

svm.model_unigrams = train(Species ~., data = iris,
                            trControl = trainControl(method = "cv",
                                                      number = 5,
                                                      allowParallel = TRUE),
                            method = "svmRadial",
                            preProc = c("center", "scale"),
                            na.action = na.pass)

同样,您可以使用其他方法,例如

train(Species ~., data = iris,
                           trControl = trainControl(method = "cv",
                                                    number = 5,
                                                    allowParallel = TRUE),
                           method = "svmRadial",
                           preProc = c("BoxCox"),
                           na.action = na.pass)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-19
    • 1970-01-01
    • 2016-02-21
    • 2017-08-21
    • 2015-03-08
    • 2016-10-06
    • 1970-01-01
    • 2013-01-08
    相关资源
    最近更新 更多