【问题标题】:Issue with using lmer() for a repeated measures ANOVA使用 lmer() 进行重复测量方差分析的问题
【发布时间】:2020-04-13 08:00:33
【问题描述】:

我正在尝试使用lmer() 执行一种重复测量方差分析。我全年对相同的池进行了多次采样,并试图根据采样日期查看响应变量(体型)是否存在差异,池是随机效应。在这种情况下,我的问题是我得到了固定效应(采样日期)的单独估计值和 p 值,而不是我通常从这种类型的模型中得到的单一估计值和 p 值。

require(lme4)
df <- data.frame(wing_length = c(5.1, 4.9, 4.7, 4.6, 5.1,2.4,4.3,4.4),
  date = c('Jan','Jan','Feb','Feb','Mar','Mar','Apr','Apr'),
  pool = c('1','2','1','2','1','2','1','2'))
mod <- lmer(wing_length ~ date + (1|pool),df)

summary(mod)

汇总输出为我提供了不同日期的各种估计值和 p 值,但我期待一个单一的估计值和 p 值告诉我基于日期的平均机翼长度是否存在差异。

我认为我的问题来自我的数据格式或对我试图用这个函数做什么的一些误解。

感谢您提供的任何建议。

【问题讨论】:

    标签: r lme4 mixed-models


    【解决方案1】:

    您需要将date 从一个因子转换为一个整数变量。否则,lmer 将自动创建假人。

    library(lme4)
    df <- data.frame(wing_length = c(5.1, 4.9, 4.7, 4.6, 5.1,2.4,4.3,4.4),
                     date = c('Jan','Jan','Feb','Feb','Mar','Mar','Apr','Apr'),
                     pool = c('1','2','1','2','1','2','1','2'))
    
    df$date <- match(tolower(df$date), tolower(month.abb))
    mod <- lmer(wing_length ~ date + (1|pool),df)
    
    summary(mod)
    

    请注意,将date 转换为整数会产生不同的模型——您在其中估计月份趋势而不是单个月份的影响(固定影响)。

    【讨论】:

    • 是的,解决了它。谢谢!
    猜你喜欢
    • 2013-02-14
    • 2013-03-25
    • 1970-01-01
    • 2021-12-15
    • 2017-01-10
    • 1970-01-01
    • 2015-12-28
    • 2015-12-06
    • 1970-01-01
    相关资源
    最近更新 更多