我用 100 名受试者和每个受试者 7 次测量模拟了一些纵向数据。我的数据具有随机截距,这将导致“可交换”相关矩阵。我的目标是在下面拟合两个单独的模型并比较结果:
- 模型 1:GLM(不考虑主体内相关性)
- 模型 2:具有可交换关联结构的 GEE
我们知道 GLM 基本上是具有“独立”相关结构的 GEE。发生的情况是我的 GEE 只进行一次迭代,因此返回第一次迭代的估计值(初始估计值),即 GLM 估计值(代码在 R 中)。
我尝试了不同的模拟场景,其中估计的可交换相关矩阵具有:低、中和高非对角相关值,但在所有这些场景中,我的 GLM 估计和 GEE 估计都是相同的(即超过 2000 个不同的模拟数据和GEE 和 GLM 之间 100% 的估计值相同)。你认为为什么会发生这种情况?
这是我的代码:
# Data Simulation:
dataSim <- function(seedNum, n, mi, beta0FE, beta1, beta0RE){
# Setting the seed number:
set.seed(seedNum)
# Generating covariates:
x <- rnorm(n, mean = 0, sd = 1)
# Generating Y:
data <- data.frame(id = rep(1:n, each = mi), x = rep(x, each = mi),
beta0_RE = rep(beta0RE, each = mi))
etaTmp <- data$beta0_RE + beta0FE + beta1*data$x
piTmp <- exp(etaTmp)/(1 + exp(etaTmp))
data$Y <- sapply(piTmp, rbinom, n = 1, size = 1)
return(data)
}
# Data Simulation Parameters:
n <- 300
mi <- 7
beta0FE <- 0.3
beta1 <- 1
beta0RE <- rnorm(n, mean = 0, sd = 1)
data <- dataSim(1, n, mi, beta0FE, beta1, beta0RE)
fit.glm <- glm(Y ~ x, data = data, family='binomial')
fit.gee <- gee(Y ~ x, id = id, data = data, family = binomial,
corstr = "exchangeable", silent = TRUE)