【问题标题】:Constructing repeated measures ANOVA in R and extracting ls means.在 R 中构建重复测量 ANOVA 并提取 ls 均值。
【发布时间】:2018-04-11 21:21:53
【问题描述】:

我正在尝试在 R 中正确构建重复测量方差分析并提取相关的 lsmeans。我的数据由一个因变量 (rSWC) 和一个预测变量 (Geno) 组成。完整数据集如下:

> str(mydata)
'data.frame':   153 obs. of  5 variables:
 $ Geno          : Factor w/ 5 levels "8306","8307",.. 
 $ BioRepeat     : int  1 1 1 1 1 1 1 1 1 2 ...
 $ Geno_BioRepeat: Factor w/ 17 levels "8306_1","8306_2",..
 $ Day           : Factor w/ 9 levels "1","2","3","4",.. 
 $ rSWC          : num  104.5 92.5 81.8 65.6 61 ...

我将重复测量方差分析构造为:

rmaModel <- aov(rSWC ~ Geno + Error(Day/Geno), data=mydata)

我希望为每个重复测量(天)提取 Geno 的 lsmeans(和相关的方差项)。目前,如果我尝试提取 lsmean,我只会为每个 Geno 获得一个 lsmean 和一条我无法解释的警告消息:

> library(lsmeans)
> lsmeans(rmaModel, specs = "Geno")
 Geno      lsmean        SE    df lower.CL  upper.CL
 8306    59.43538  8.905658  8.00 38.89890  79.97187
 8307    58.06825  9.988820 12.45 35.03399  81.10251
 8417    71.16686 10.158125 13.24 47.74219  94.59154
 Control 86.97797 10.488538 14.84 62.79136 111.16459
 WT      45.76538  9.988820 12.45 22.73112  68.79964

Confidence level used: 0.95 
Warning message:
In lsm.basis.aovlist(object, trms, xlev, grid, ...) :
  Some predictors are correlated with the intercept - results are biased.
 May help to re-fit with different contrasts, e.g. 'contr.sum' 

任何有助于了解我的模型是否正确构建、如何为每个重复测量提取 lsmean 以及如何解释警告消息的帮助将不胜感激。谢谢!

【问题讨论】:

    标签: r anova lsmeans


    【解决方案1】:

    R 回归函数中统计检验的默认对比是处理对比,因此“截距”水平通常是每个因子变量中的第一个。警告消息建议您可以重新定义 Geno 变量的对比度。所以这可以通过以下方式完成:

     ?contrasts  # to get the background theory and example code
     contrasts(mydata$Geno) <- contr.sum(5) 
     rmaModel <- aov(rSWC ~ Geno + Error(Day/Geno), data=mydata) # refit
     lsmeans(rmaModel, specs = "Geno") 
    

    【讨论】:

    • 谢谢,解决了警告信息。关于如何获得所有重复测量的 lsmeans 的任何想法?
    • 对不起,我不明白这个问题。您应该发布一个数据示例并指出结果的哪一部分有问题。
    • 我的问题是我希望每个重复测量(天)的每个“基因”都有一个 lsmean 值,但每个“基因”只有一个 lsmean。我想知道问题是否在于没有表明那一天是初始模型中的重复测量,还是我使用 lsmeans()
    • Lsmeans 仅返回固定效应的均值。您安装的模型将 Day 作为随机效应。因此,如果 Day 实际上是一个感兴趣的效应,它应该在模型中作为一个固定效应,而不是 Error() 项的一部分。同时我想知道其他因素 BioRepeat 是否有任何相关性,是否应该以某种方式包含在模型中。这可能有助于解释您是如何进行实验的以及如何将其随机化的。
    猜你喜欢
    • 2014-11-27
    • 1970-01-01
    • 2023-02-23
    • 2014-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多