如何解决R中的负下标误差?

时间:2015-04-28 08:00:30

标签: r debugging normalization subset

我正在尝试在预测之前规范化数据框,但是我收到了这个错误:

Error in seq_len(nrows)[i] :
only 0's may be mixed with negative subscripts
Called from: top level

这是我的代码:

 library('caret')
 load(file = "some dataset path here") 
 DummyDataSet =  data
 attach(DummyDataSet)
 foldCount = 10
 classifyLabels = DummyDataSet$ClassLabel
 folds = createFolds(classifyLabels,k=foldCount)
 for (foldIndex in 1:foldCount){
    cat("----- Start Fold -----\n")

    #holding out samples of one fold in each iterration
    testFold    = DummyDataSet[folds[[foldIndex]],]     
    testLabels  = classifyLabels[folds[[foldIndex]]]
    trainFolds  = DummyDataSet[-folds[[foldIndex]],]
    trainLabels = classifyLabels[-folds[[foldIndex]]]

#Zero mean unit variance normalization to ONLY numerical data
for (k in 1:ncol(trainFolds)){
   if (!is.integer(trainFolds[,k])){
      params = meanStdCalculator(trainFolds[,k])
      trainFolds[,k] = sapply(trainFolds[,k], function(x) (x - params[1])/params[2])
      testFold[,k]  = sapply(testFold[,k],  function(x) (x - params[1])/params[2])
   }
}
  meanStdCalculator = function(data){  
    Avg  = mean(data)
    stdDeviation  = sqrt(var(data))
    return(c(Avg,stdDeviation))
  }
  cat("----- Start Fold -----\n")
}

其中trainFolds是由插入符包创建的折叠,其类型是data.frame。 我已经阅读了这些链接:

R Debugging

Subset

Negative Subscripts

但我无法找出索引有什么问题? 有人可以帮帮我吗?

0 个答案:

没有答案