我正在做一个简单的混合模型分析,并希望估计研究的力量(对于多种可能的样本量)。我使用lme4
来拟合模型,并希望使用simulate()
函数来根据我的试验研究模型中估计的参数模拟新数据,然后使用此数据进行功效分析。
我的模特是:
m.2 <- lmer(y ~ time + group + (time | subject), REML=FALSE)
数据看起来像这样:
npg <- 20 # No of subjects per group
subject <- 1:(2*npg) # Subjects' ids
group <- gl(2, npg, labels = c("Control", "Treatment"))
dts <- data.frame(subject, group) # Subject-level data
dtL <- list(time = 0:9,
subject = subject)
dtLong <- expand.grid(dtL) # "Long" format
mrgDt <- merge(dtLong, dts, sort = FALSE) # Merged
我知道我可以从这样的试验数据模型中获取参数:
newparams <- list(
beta = fixef(m.2),
theta = getME(m.2, "theta"),
sigma = getME(m.2, "sigma"))
我可以用这个模拟新数据:
ss <- simulate(~ time + group + (time|subject),
nsim=1,
newdata=d,
family=gaussian,
newparams=newparams)
不幸的是,我是模拟的新手,并不知道如何使用模拟数据集进行功率分析。你能帮我一些代码和一些建议吗?
编辑:
我想进行类似于Gałecki&amp;的功率分析。 Burzykowski(2013)书。
Gałecki,A。,&amp; Burzykowski,T。(2013)。使用R的线性混合效应模型:逐步的方法。施普林格科学&amp;商业媒体,p。 515.例子是:基于F检验统计量的模拟值,治疗效果的F检验的经验效力。
https://peerj.com/articles/1226.pdf中的信息和补充信息(https://peerj.com/articles/1226/#supp-1)非常有用,我认为这是要走的路,但我不明白如何应用他们的代码。
我想根据我的试验研究中拟合模型的真实参数来模拟数据。 我目前还没有准备好所有数据。为了举例和再现性,我假设我使用了植物生长数据集
df<-read.table('http://www.uib.no/People/nzlkj/statkey/data/plantgrowth.csv',header=T)
我的模特是
m.2 <- lmer(height ~ time + treat + (time | individual), REML=FALSE)
在我的控制下,每个组或研究中的个体数量(两组,治疗和对照)。