1

我正在运行 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
4

1 回答 1

2

当我尝试在 lmer 对象上运行疏通功能(来自“MuMin”)并且一直在寻找有类似问题的人时,我收到了相同的错误消息。

我没有在网上找到问题的解决方案,但是在阅读了这个问题后,我寻找了contr .Treatment 并在“汽车”包中找到了它。
“汽车”已关闭,打开它为我消除了错误。似乎“汽车”应该作为依赖项加载,但无论出于何种原因,它都没有加载。

于 2015-11-24T19:51:27.300 回答