R

时间:2015-10-24 05:51:40

标签: r regression

我试图使用插入包进行选择,这是我使用的命令:

    titanicDF3 = read.table("combo.txt", header = TRUE)
    View(titanicDF3)
    require(caret)
require(fscaret)
    splitIndex <- createDataPartition(titanicDF3$Survived, p = .75, list = FALSE, times = 1)
    trainDF <- titanicDF3[ splitIndex,]
    testDF  <- titanicDF3[-splitIndex,]

    fsModels <- c("glm", "gbm", "treebag", "ridge", "lasso")
    myFS<-fscaret(trainDF, testDF, myTimeLimit = 40, preprocessData=TRUE,
                  Used.funcRegPred = 'gbm', with.labels=TRUE,
                  supress.output=FALSE, no.cores=2)

但是我收到了错误:

Error in checkForRemoteErrors(val) : 
  one node produced an error: incorrect number of dimensions

由于我是R的新手,我不确定是什么导致了这一点。任何想法或建议都将受到欢迎。

供参考,我的文本文件如下所示

Gene    Start   end Item1   Item2   Item3   Item4   Item5   Survived
100 1   56  3123    2149    3211    5000    300 0
100 34  78  3456    2345    1210    5462    321 0
100 43  98  4312    3210    2894    5487    350 0
100 54  102 4671    4310    3106    6579    390 0
100 98  121 5601    4450    4123    6792    352 0
140 130 280 7699    8790    8791    2122    768 1
140 160 321 6590    7680    8612    1278    779 1
140 210 345 8680    6712    7689    3128    987 1
140 260 431 8981    7781    9761    2199    453 1
140 324 540 9791    9941    8634    2679    410 1

我也尝试使用不同的型号。当我使用glm模型时,我遇到了新的错误

fsModels <- c("glm", "knn", "svmPoly", "svmLinear")
myFS<-fscaret(trainDF, testDF, myTimeLimit = 40, preprocessData=TRUE,
              Used.funcRegPred = 'glm', with.labels=TRUE,
              supress.output=FALSE, no.cores=2)

----Processing files:----
[1] "1in_default_REGControl_glm.RData"
[1] ""
[1] "Calculating error for model:"
[1] "1in_default_REGControl_glm.RData"
[1] ""

----Processing files:----
[1] "1in_default_REGControl_VarImp_glm.txt"
Error in `[<-.data.frame`(`*tmp*`, rows, ncol(matrycaVarImp.RMSE), value = numeric(0)) : 
  replacement has length zero

当我选择任何其他模型说svm时,之前的错误仍然存​​在 即:

Error in checkForRemoteErrors(val) : 
  one node produced an error: incorrect number of dimensions

我在这里遗漏了什么吗?有人可以对此有更多的了解吗?

1 个答案:

答案 0 :(得分:0)

您的代码的问题在于您尝试在回归模式下使用fscaret()函数,但您的数据显然是分解的(如果不是由您有意,而不是read.table()或内部由{{ 1}}功能)。 对于您为fscaret()仅提供fsModels的示例,不使用NaN&#39;以下代码:

glm

标记titanicDF3 = read.table("combo.txt", header = TRUE) View(titanicDF3) require(caret) require(fscaret) splitIndex <- createDataPartition(titanicDF3$Survived, p = .75, list = FALSE, times = 1) trainDF <- titanicDF3[ splitIndex,] testDF <- titanicDF3[-splitIndex,] fsModels <- c("glm", "gbm", "treebag", "ridge", "lasso") myFS<-fscaret(trainDF, testDF, myTimeLimit = 40, preprocessData=TRUE, classPred = TRUE, regPred = FALSE, Used.funcClassPred = fsModels, with.labels=TRUE, supress.output=FALSE, no.cores=2) 。另请注意Used.funcClassPred = fsModels,它会阻止fscaret()以回归模式运行。