R 带有偏移的泊松的cv.glmnet中存在错误
尝试使用偏移量对glmnet for family=poisson运行交叉验证时遇到错误 我通过下面一个非常简单的示例成功地复制了错误:R 带有偏移的泊松的cv.glmnet中存在错误,r,cross-validation,poisson,glmnet,offset,R,Cross Validation,Poisson,Glmnet,Offset,尝试使用偏移量对glmnet for family=poisson运行交叉验证时遇到错误 我通过下面一个非常简单的示例成功地复制了错误: library(glmnet) #poisson N=500; p=20 nzc=5 x=matrix(rnorm(N*p),N,p) beta=rnorm(nzc) f = x[,seq(nzc)]%*%beta mu=exp(f) y=rpois(N,mu) exposure=rep(0.5,length(y)) #cross validation c
library(glmnet)
#poisson
N=500; p=20
nzc=5
x=matrix(rnorm(N*p),N,p)
beta=rnorm(nzc)
f = x[,seq(nzc)]%*%beta
mu=exp(f)
y=rpois(N,mu)
exposure=rep(0.5,length(y))
#cross validation
cv=cv.glmnet(x,y,family="poisson",offset=log(exposure),nlambda=50,nfolds=3)
返回以下错误:
错误:没有为预测提供新的偏移量,但在拟合中使用了偏移量
glmnet
我搞不清楚我做错了什么。在网上找不到任何帮助。有人有想法吗
非常感谢
编辑:此问题已过时,并链接到glmnet
软件包的2.0-12
版本-更新到2.0-13版本时修复
这项工作:
predict(cv,x,newoffset=log(暴露))
从glmnet
的文档中获取offset
参数:
如果提供,则还必须将值提供给predict
功能
谢谢你的回复,我的错误实际上是在建模上,而不是在预测上。我可以问一下您使用的是哪个版本的glmnet软件包吗?我有一种感觉,这可能是因为我的版本(2.0-12)。您发布的代码在glmnet_2.0-13
上为我运行时没有错误。您发布的错误只在predict
中显示,但是,不符合模型-您确定您没有尝试在发布的代码行之后运行predict
,我会更新并让你知道。谢谢!在过去的几天里,这一直困扰着我,我从未想过它可能会链接到一个软件包版本。好的,将软件包更新为2.0-13版本,现在一切都正常运行。2.0-12版只在CRAN上运行了几天,所以我猜他们意识到有一些bug!谢谢。