使用R中的脱字符号包(使用交叉验证)找到逻辑/ LASSO的预测概率

问题描述 投票:2回答:1

我使用R中的插入符号包拟合了套索逻辑回归模型。我的代码如下,

require(ISLR)
require(caret)
set.seed(123)
fitControl <- trainControl(method = "cv",number = 5,savePredictions = T,classProbs=TRUE)
mod_fitg <- train(Direction ~ Lag1 + Lag2 + Lag3 + Lag4 + Volume,
                  data=Smarket[1:100,], method = "glmnet", 
                  trControl = fitControl,
                  tuneGrid=expand.grid(
                    .alpha=1,
                    .lambda=10^seq(-5, 5, length =2)),
                  family="binomial")

当我提取预测值时,它将仅如下显示预测类(在pred列下),

mod_fitg$pred

enter image description here

是否有一种方法可以提取预测的概率而不是预测的类别?我需要以某种方式基于交叉验证来获得预测的概率。

谢谢

r cross-validation r-caret
1个回答
0
投票

我相信您的预测概率在DownUp列下。该模型为许多观察提供了均匀的机会,并且在这种情况下似乎服从Up。但是,列表下方还有其他变化。 mod_fit$pred是一个数据帧,您可以直接提取值:

pre_prob <- mod_fitg$pred[3:5]
pre_prob

#output- keeping index if we care about a certain observation 
    rowIndex      Down        Up
1          4 0.5000000 0.5000000
2          8 0.5000000 0.5000000
© www.soinside.com 2019 - 2024. All rights reserved.