给定二元响应yi和协变量xi,i=1,2,…,n,您的模型的可能性是
L(β0,β1,pmin,pmax)=∏i=1npyii(1−pi)1−yi
其中每个
pi=pmin+(pmax−pmin)11+exp(−(β0+β1xi).
只需编写一个计算此日志的函数,然后应用一些通用优化算法来针对四个参数在数值上最大化它。例如,在 R 中:
# the log likelihood
loglik <- function(par,y,x) {
beta0 <- par[1]
beta1 <- par[2]
pmin <- par[3]
pmax <- par[4]
p <- pmin + (pmax - pmin)*plogis(beta0 + beta1*x)
sum(dbinom(y, size=1, prob=p, log=TRUE))
}
# simulated data
x <- seq(-10,10,len=1000)
y <- rbinom(n=length(x),size=1,prob=.2 + .6*plogis(.5*x))
# fit the model
optim(c(0, 0.5 ,.1, .9), loglik, control=list(fnscale=-1), y=y,x=x, lower=c(-Inf,-Inf,0,0),upper=c(Inf,Inf,1,1))
请注意,要测试较低平台的证据pmin在您的数据中,您的H0:pmin=0是在参数空间的边界和近似/渐近分布2(logL(θ^1)−logL(θ^0))将是自由度为 1 和 0 的卡方分布的混合,请参阅 Self, SG & Liang, K. 非标准条件下最大似然估计量和似然比检验的渐近特性 J. Amer。统计学家。协会,1987,82,605-610。
在更简单的情况下,只有一个平台(所以pmax=1或者pmin=0) 该模型等价于零膨胀二元回归模型,可以使用例如glmmTMB
R 包进行拟合。