【问题标题】:Two-way repeated measures ANOVA in RR中的双向重复测量方差分析
【发布时间】:2020-10-29 09:00:53
【问题描述】:

我一直在尝试在 R 中对虚构数据集进行双向重复测量方差分析来学习统计数据。我以前问过这个问题,但我不得不调整我的数据集,因为我犯了一些关键错误。它代表两名学生在两年内对两个测试变体的测试进行评分。尽管这个练习应该很简单,但我还是不断收到错误消息。这是我的数据集:

   ID   Score   Time  Group
  <fct> <int>  <fct>  <fct>
   1    10      1       1
   1    15      2       1
   2     2      1       1
   2     5      2       1
   3     7      1       1
   3     8      2       1
   4     6      1       2
   4     8      2       2
   5     9      1       2
   5     4      2       2
   6     3      1       2
   6    12      2       2

我尝试了几种方法:

aov<- df %>% anova_test(Score~ Time*Group+ Error(ID/(Time*Group)))

ezANOVA(
  data = df, dv = Score, wid = ID,
  within = .(Time, Group), type = 3)

resaov <- anova_test(
  data = df, dv = Score, wid = ID,
  within = c(Time, Group))

我得到的错误信息是:

Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
  0 (non-NA) cases

我应该以不同的方式格式化我的数据吗?如果是这样,它应该是什么样子?

【问题讨论】:

    标签: r anova two-way


    【解决方案1】:

    问题在于 Group 是一个主体间因素(每个 ID 都在第 1 组或第 2 组中,但不在两者中),但您将其威胁为 anova 中的主体内因素来电。错误消息告诉您指定设计的数据不完整。

    如果您使用 Group 作为中间因素指定设计,它会起作用。

    #packages
    library(tidyr)
    library(ez)
    library(rstatix)
    
    #create your data frame (with random Score values)
    df <- tibble(ID = as.factor(rep(1:6, each = 2)),
                 Score = sample(1:15, 12, replace = TRUE),
                 Time = as.factor(rep(1:2, times = 6)),
                 Group = as.factor(rep(1:2, each = 6)))
    
    #ezANOVA
    ezANOVA(
      data = df, dv = Score, wid = ID,
      within = Time, between = Group, type = 3)
    
    $ANOVA
          Effect DFn DFd         F         p p<.05        ges
    2      Group   1   4 0.1290323 0.7375971       0.02787456
    3       Time   1   4 4.1290323 0.1119574       0.10289389
    4 Group:Time   1   4 0.5806452 0.4885138       0.01587302
    
    #anova_test #1
    anova_test(data = df, formula = Score ~ Time*Group + Error(ID/Time))
    ANOVA Table (type II tests)
    
          Effect DFn DFd     F     p p<.05   ges
    1      Group   1   4 0.129 0.738       0.028
    2       Time   1   4 4.129 0.112       0.103
    3 Group:Time   1   4 0.581 0.489       0.016
    
    #anova_test #2
    df %>% anova_test(Score~ Time*Group+ Error(ID/Time))
    
    ANOVA Table (type II tests)
    
          Effect DFn DFd     F     p p<.05   ges
    1      Group   1   4 0.129 0.738       0.028
    2       Time   1   4 4.129 0.112       0.103
    3 Group:Time   1   4 0.581 0.489       0.016
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      • 2020-05-19
      • 2020-06-04
      • 2015-06-04
      • 1970-01-01
      相关资源
      最近更新 更多