【问题标题】:How to resolve error in R neuralnet function- undefined columns selected?如何解决 R 神经网络函数中的错误 - 选择了未定义的列?
【发布时间】:2021-08-12 04:39:37
【问题描述】:

我在运行神经网络函数时得到以下信息:

Error in `[.data.frame`(data, , model.list$variables) : 
  undefined columns selected

我使用的代码如下图:

 #creating training and test dataset
it_trainann<-norm_it_1h[1:1748, ]
it_testann<-norm_it_1h[1749:2185, ]
sum(is.na(it_trainann))
[1] 0
sum(is.na(it_testann))
[1] 0
#prediction using ANN
library(neuralnet)
it_model<-neuralnet(Unit.Price~., data=it_trainann, hidden=3)

norm_it_1h 是由标准化数值变量组成的数据框。 我既找不到 NA 值,也找不到非数字变量。 回溯,我得到以下结果:

6: stop("undefined columns selected")
5: `[.data.frame`(data, , model.list$variables)
4: data[, model.list$variables]
3: as.matrix(data[, model.list$variables])
2: cbind(intercept = 1, as.matrix(data[, model.list$variables]))
1: neuralnet(Unit.Price ~ ., data = it_trainann, hidden = 3)

请帮我解决这个问题。

【问题讨论】:

  • 你检查it_trainann中变量的确切名称是Unit.Price吗?
  • @G5W,是的,我做到了
  • 如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。

标签: r neural-network


【解决方案1】:

我在处理大数据时遇到了同样的错误。我在 StackOverflow 1 2 中尝试了一些解决方案,但没有一个解决了我的问题。然后,我打印了我在模型上使用的所有变量名。我注意到我的一些变量名有特殊的字符串。 总之,更改似乎有问题的 col 名称修复了我的错误:

colnames(mydataframe)[which(names(mydataframe) == "A problematic name $½£ _")] <- "NotProblematicName"

【讨论】:

    猜你喜欢
    • 2020-07-29
    • 2017-11-06
    • 1970-01-01
    • 1970-01-01
    • 2013-12-20
    • 2011-10-31
    • 2018-05-30
    • 2020-10-23
    • 2014-04-20
    相关资源
    最近更新 更多