这是我的数据集的开头:
head(dataset)
year location system rep_int pair class
1 2015 A CONV 1 2 1.807355
2 2015 A CONV 2 2 2.807355
3 2015 A CONV 3 2 1.807355
4 2015 A CONV 4 2 2.807355
5 2015 A CONV 5 2 1.807355
6 2015 A CONV 6 2 1.807355
使用:
我的实验是通过三个位置(A,B和C)测量常规(CONV)和有机(BIOL)农用地块的“等级”。我已经进行了三年的测量(2015年,2016年,2017年)。在每个包裹中,我采样了9或10次(rep_int)。为了考虑土壤类型,我对包裹进行了“配对”,以便在每个位置有两对CONV-BIOL共享相似的土壤。因此,“ 2015-A-CONV-2”与“ 2015-A-BIOL-2”配对。
不确定您是否需要了解这一点,但是在2015年,我在位置A和B,2016年在位置B和C和2017年在位置A和C进行了采样,因此每个位置都采样了两次。但是,在每个位置中,我多年来不会对同一宗地进行采样(这是因为我在麦田中进行采样,并且小麦并非每年都在同一宗地上生长)。
耕作系统(CONV-BIOL)被分析为固定效应,而年份和位置被分析为随机效应。由于包裹对在不同位置和年份之间会发生变化,因此,成对也作为随机效应包含在位置和年份内。
我正在使用线性混合模型,使用软件包“ lme4”测试耕作系统是否影响我的变量“类别”。
我的最终模型是(在测试了哪些相互作用具有显著作用之后):
mod.final<-lmer(class~system+(1|year)+(1|location)+(1|year:location:pair)+(system|location)+(system|year)+(system|year:location:pair), data=dataset)
第一个问题:运行模型时,出现以下错误消息:
Warning messages:
1: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
unable to evaluate scaled gradient
2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge: degenerate Hessian with 1 negative eigenvalues
然后,当我对“ car”包进行Anova检验时,我得到Df = 1
> Anova(mod.final, type="III")
Analysis of Deviance Table (Type III Wald chisquare tests)
Response: class
Chisq Df Pr(>Chisq)
(Intercept) 1752.753 1 < 2.2e-16 ***
system 18.956 1 1.337e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
实际上,除“类别”外,我还有许多其他指标,并且我总是得到Df = 1。这似乎很奇怪,但是我该怎么做呢?
非常感谢您的帮助!