我正在尝试运行混合效果逻辑回归模型,但我担心每个群集/组中的变量样本大小,以及某些模型中“成功”的数量非常少。
我有大约700棵树,分布在163个地块(即群集/群组)中,每年从2004 - 11年开始访问。我为研究的每一年拟合单独的混合效应逻辑回归模型(以下称GLMM),以将该输出与来自共享脆弱模型的推断(即,具有随机效应的生存分析)进行比较。
每个地块的树木数量从1-22不等。此外,有些年份的“成功”(即患病的树木)数量非常少。例如,在2011年,694个“失败”(即健康的树木)中只有4个成功。
我的问题是:(1)当推理重点仅在于估计GLMM中的固定效应时,是否存在理想样本数组的一般规则,以及(2)当有这样的情况时GLMM是稳定的成功率的极端差异:失败。
感谢您提供任何建议或建议。
-Sarah
答案 0 :(得分:1)
(嗨,莎拉,对不起我之前没有通过电子邮件回答......)
一般来说很难回答这些问题 - 你被困住了
你的数据,对吧?所以这不是功率分析的问题。
如果您想确保您的结果合理
可靠,可能最好的办法是运行一些模拟。
我将展示lme4
的一个相当近期的特征(在...中)
开发版本1.1-1,在Github上),即模拟
给定公式和一组参数的GLMM数据。
首先,我必须模拟预测变量(你不会 必须这样做,因为你已经有了数据 - 尽管如此 您可能想尝试改变绘图数量的范围, 每个地块的树木等。)。
set.seed(101)
## simulate number of trees per plot
## want mean of 700/163=4.3 trees, range=1-22
## by trial and error this is about right
r1 <- rnbinom(163,mu=3.3,size=2)+1
## generate plots and trees within plots
d <- data.frame(plot=factor(rep(1:163,r1)),
tree=factor(unlist(lapply(r1,seq))))
## expand by year
library(plyr)
d2 <- ddply(d,c("plot","tree"),
transform,year=factor(2004:2011))
现在设置参数:我将假设年份是固定的
效果和整体疾病发病率为plogis(-2)=0.12
除外
在2011年,它是plogis(-2-3)=0.0067
。之间的标准差
是1(在logit标度上),就像树内的标准一样
偏差:
beta <- c(-2,0,0,0,0,0,0,-3)
theta <- c(1,1) ## sd by plot and plot:tree
现在模拟:年份作为固定效果,情节和树内情节为 随机效应
library(lme4)
s1 <- simulate(~year+(1|plot/tree),family=binomial,
newdata=d2,newparams=list(beta=beta,theta=theta))
d2$diseased <- s1[[1]]
综述/检查:
d2sum <- ddply(d2,c("year","plot"),
summarise,
n=length(tree),
nDis=sum(diseased),
propDis=nDis/n)
library(ggplot2)
library(Hmisc) ## for mean_cl_boot
theme_set(theme_bw())
ggplot(d2sum,aes(x=year,y=propDis))+geom_point(aes(size=n),alpha=0.3)+
stat_summary(fun.data=mean_cl_boot,colour="red")
现在适合模特:
g1 <- glmer(diseased~year+(1|plot/tree),family=binomial,
data=d2)
fixef(g1)
您可以尝试多次,看看结果的可靠程度......
答案 1 :(得分:0)
正如约什所说,对于CrossValidated来说,这是一个更好的问题。
逻辑回归没有硬性和快速的规则,但一条经验法则是10次成功,设计中每个单元需要10次失败(本例中为簇)乘以模型中连续变量的数量。
在你的情况下,我认为模型,如果收敛,将是不稳定的。你可以通过引导固定效应估计的误差来检查它。