【发布时间】:2017-09-29 17:35:38
【问题描述】:
我正在尝试在我的数据集上应用堆叠,但我在这里。
# Load library
library(DJL)
library(caret)
library(caretEnsemble)
# Load data and format the target attribute to avoid clutters
df <- dataset.engine.2015[, -c(1, 2)]
levels(df$Type) <- list(NA.D = "NA-D", NA.P = "NA-P", SC.P = "SC-P", TC.D = "TC-D", TC.P = "TC-P")
# Run
st.methods <- c("lda", "rpart", "glm", "knn", "svmRadial")
st.control <- trainControl(method = "repeatedcv", number = 5, repeats = 3,
savePredictions = T, classProbs = T)
st.models <- caretList(Type ~., data = df, trControl = st.control, methodList = st.methods)
然后我明白了:
Something is wrong; all the Accuracy metric values are missing:
Accuracy Kappa
Min. : NA Min. : NA
1st Qu.: NA 1st Qu.: NA
Median : NA Median : NA
Mean :NaN Mean :NaN
3rd Qu.: NA 3rd Qu.: NA
Max. : NA Max. : NA
NA's :1 NA's :1
Error: Stopping
In addition: There were 18 warnings (use warnings() to see them)
谁能帮我解决这个错误?
【问题讨论】:
-
你能不能试着举个例子reproducible,否则任何建议都只是猜测。
-
对不起,我忘了加载包“caretEnsemble”。现在,您可以重现我的错误。感谢您指出这一点!
-
如果没有从您的输入数据集
dataset.engine.2015中进行一些观察,您的示例将无法重现。如果您的数据集是专有的,您可以使用第一条评论中提到的选项对其进行匿名化。本质上,创建一个小型测试数据集,您会在该数据集上收到错误并发布dput(DF)的输出,其中DF是测试数据集。 -
我不知道您所说的“不可重现”是什么意思。数据集(dataset.engine.2015)伴随着“DJL”包,所以我相信你可以简单地实现我的代码来加载它并重现我的问题。如果这不是您所要求的,请告知。
-
对不起,请原谅我对
DJL包的不熟悉以及我假设dataset.engine.2015是用户定义的数据集。