我有一个数据集,我正在进行逐步回归,并进行交叉验证。我最初使用交叉验证执行多元线性回归,并且能够看到我的测试集的值与我的训练集的接近程度每个折叠(我使用该值然后绘制一个图表,其中我测量了性能)。我是做同样的事情,但逐步回归。我在R中执行了以下算法: -
test <- CV.SuperLearner(Y,X, V = 10, SL.library = SL.library, verbose = TRUE, method = "method.NNLS")
但是我无法看到我如何能够看到每个折叠的值以及它们的接近程度。有没有办法让我能够这样做?
我尝试了print
和summary
,但他们没有提供我想要的信息。
由于
答案 0 :(得分:2)
?CV.SuperLearner
中解释了这一点:
结果包含AllSL
个广告位,包含所有折叠。
# Sample data
library(SuperLearner)
example(CV.Superlearner)
str(test$AllSL) # You see a list with V=10 elements
test$AllSL[[1]] # The first fold
predict( test$AllSL[[1]] ) # The predicted values
如果要与实际值进行比较, 您需要知道折叠中包含哪些观察结果。
plot(
Y[ test$folds[[1]] ],
predict( test$AllSL[[1]] )$pred,
xlab = "Actual", ylab = "Predicted",
main = "First fold"
)
更一般地说,要检查对象的内容,您可以使用str
和names
除print
,summary
或plot
。
str(test) # Too long to be useful
names(test)
str(test$AllSL)
str(test$AllSL[[1]])
str(test$folds)