全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
5293 0
2015-11-11
大家好,我想请教一个问题,是关于用R做poisson分布 canonical link的GLM。模型建好了之后我想做一下预测并且计算预测值95%的置信区间,因为R里predict并没有能直接对poisson GLM计算置信区间的选项,就打算输出预测值的标准差后手动计算。记得比较普遍的方法是先算出linear predictor scale的置信区间,然后再inverse转换回original scale
temp <- predict(model.glm, newdata=predict.data, type="link", se.fit=T)

predict1 <- temp$fit + c(-1, 0, 1)*qt(0.975, 95) * temp$se.fit

exp(predict1)

[1] 3.881081 4.437126 5.072836
后来想起predict函数里可以直接输出response的标准差,那就不用再inverse了,于是试了一下:
temp <- predict(model.glm, newdata=predict.data, type="response", se.fit=T)

predict2 <- temp$fit + c(-1, 0, 1)*qt(0.975, 95) * temp$se.fit


predict2

[1] 3.843025 4.437126 5.031227
发现两种方法的结果是有差别的。网上搜了一下好像普遍都是用第一种,先算scale of linear predictor的CI然后再inverse整个CI,但是感觉这样不太对劲啊,exp(SE(log(y)))和SE(y)显然不等价啊,求能否帮忙解释一下啊。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群