我的响应变量是分类的,从1到7.我理解使用glmnet我可以将 type 设置为响应并获得预测的概率。
prob.vec = predict.cv.glmnet(cvfit,newx = X.test,s =" lambda.min", type =" response")
但是,我也有兴趣获得其他类别的概率。我想知道glmnet中是否存在这样的功能。
答案 0 :(得分:0)
在family = 'multinomial'
内设置cv.glmnet
,您应该全部设置好。这是一个简单的例子。
library(glmnet)
y <- iris$Species
x <- as.matrix(iris[,1:4])
m1 <- cv.glmnet(x, y, family = 'multinomial')
predict(m1, newx = x, s = 'lambda.min', type = 'response')[1:2,,]
# setosa versicolor virginica
#[1,] 0.9992059 0.000794057 2.548623e-20
#[2,] 0.9961627 0.003837330 1.206001e-18