我正在运行 Windows XP,最近升级到 R 3.1.1 并更新了所有软件包。奇怪的是,我不能再对自己的数据运行 lmer 了。我的代码在我使用 R 2.15 时有效。我还尝试使用 lme4 包中的 sleepstudy 数据集,一切正常。
我正在研究 6 个日期的 16 个地块(高多样性处理中 8 个,低多样性处理中 8 个)的幼苗数量变化。这是数据框的结构:
>str (Dataset)
'data.frame': 96 obs. of 5 variables:
Plot : Factor w/ 16 levels "10B","12A","13B",..: 12 13 14 15 16 1 2 3 4 5 ...
Trt : Factor w/ 2 levels "high","low": 2 1 1 2 1 2 1 2 2 1 ...
Date : Factor w/ 6 levels "Apr-12","Apr-13",..: 1 1 1 1 1 1 1 1 1 1 ...
Seed : int 0 0 2 7 1 0 8 0 2 5 ...
我尝试使用 Date 和 Treatment 作为固定因素,Plot 作为随机因素来运行完整模型:
> seeds <- lmer(Seed~Trt*Date+(1|Plot), Dataset)
但我不断收到此错误:
Error in get(ctr, mode = "function", envir = parent.frame()) :
object 'contr.Treatment' of mode 'function' was not found
我已经尝试运行一个仅包含处理和绘图或仅包含日期和绘图的简化模型,但我仍然遇到相同的错误。将数据导入 R 时,我做了什么奇怪的事情吗?任何想法我做错了什么?
-- 2014 年 9 月 29 日更新 --
所以我尝试在一些假数据上运行 aov,即使这样也不起作用。这是我的代码:
> thing = c(4, 5, 4, 3, 2, 4, 3, 4, 4, 6, 8, 4, 5, 4, 6, 5, 8, 6, 6, 7, 6, 6, 7, 5, 6, 5, 5)
> treatment = c(rep("A",9), rep("B",9), rep("C",9))
> Dataset = data.frame(thing,treatment)
> results = aov(thing ~ treatment, data=Dataset)
我得到同样的错误:
Error in get(ctr, mode = "function", envir = parent.frame()) :
object 'contr.Treatment' of mode 'function' was not found