Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
伪R²;对于具有偏移量的泊松GLM_R_Offset_Glm_Pscl - Fatal编程技术网

伪R²;对于具有偏移量的泊松GLM

伪R²;对于具有偏移量的泊松GLM,r,offset,glm,pscl,R,Offset,Glm,Pscl,我的问题可能是技术性的:我正试图通过使用人口(p)作为抵消来控制暴露来模拟疾病计数(d)。在R中,我找到了两种可能的方法: m1 -> glm(d ~ 1 + offset(log(n)), family=poisson, data=dat) m2 -> glm(d ~ 1, family=poisson, data=dat, offset=log(n)) m1和m2的摘要显示summary(m1)=summary(m2)但是如果我试图通过pR2(pscl包)计算McFadden:

我的问题可能是技术性的:我正试图通过使用人口(p)作为抵消来控制暴露来模拟疾病计数(d)。在R中,我找到了两种可能的方法:

m1 -> glm(d ~ 1 + offset(log(n)), family=poisson, data=dat)
m2 -> glm(d ~ 1, family=poisson, data=dat, offset=log(n))
m1和m2的摘要显示
summary(m1)
=
summary(m2)
但是如果我试图通过
pR2
(pscl包)计算McFadden:
McFadden(m1)
≠ <代码>麦克法登(m2)


有人对此有解释吗?

这是
pscl::pR2.glm的源代码:

function (object, ...) 
{
    llh <- logLik(object)
    objectNull <- update(object, ~1)
    llhNull <- logLik(objectNull)
    n <- dim(object$model)[1]
    pR2Work(llh, llhNull, n)
}
<environment: namespace:pscl>
library("foreign")
ceb <- read.dta("http://data.princeton.edu/wws509/datasets/ceb.dta")
ceb$y <- round(ceb$mean*ceb$n, 0)
ceb$os <- log(ceb$n)  

m0 <- glm(y ~ res + offset(os), data=ceb, family=poisson)
m1 <- glm(y ~ res, offset=os, data=ceb, family=poisson)

all.equal(coef(m0), coef(m1))
# [1] TRUE

### compute null models
coef(update(m0, ~1))  # wrong, offset not considered
# (Intercept) 
#        5.02 
coef(update(m1, ~1))
# (Intercept) 
#       1.376 
coef(update(m0, ~1, offset=os))
# (Intercept) 
#       1.376