我正在尝试在整洁的数据框架上执行MANOVA,看起来有点像以下内容。 " ID"是指参与者号码。自变量是" init_cont" (值为I或K)和" family" (具有C,S或D的值),使得2x3设计。专栏" qnumber"是指参与者回答的问题的数量,每个参与者回答3个问题。 "值"是每个参与者对特定问题的回应。
id init_cont family qnumber value
1 I C 1 3.5
1 I C 2 2
1 I C 3 4
2 K C 1 2
2 K C 2 5
2 K C 3 3
3 K S 1 4.5
3 K S 2 5
3 K S 3 3
4 K D 1 1
4 K D 2 7.5
4 K D 3 3
对这些数据执行MANOVA的最佳方法是什么?我感兴趣的是自变量之间的相互作用以及它们如何影响价值"对于3个问题中的每一个。如果它是相关的,我的实际数据集有14个不同的问题。
我考虑过以下格式重新组织数据,但我不确定如何在R中执行此操作。" value"之后的数字在每个新列中都来自" qnumber"。
id init_cont family value1 value2 value3
1 I C 3.5 2 4
2 K C 2 5 3
3 K S 4.5 5 3
4 K D 1 7.5 3
答案 0 :(得分:2)
df %>% spread(qnumber, value)
# id init_cont family 1 2 3
# 1 1 I C 3.5 2.0 4
# 2 2 K C 2.0 5.0 3
# 3 3 K S 4.5 5.0 3
# 4 4 K D 1.0 7.5 3
可以轻松完成问题的第一部分。
t <- 'id init_cont family qnumber value
1 I C 1 3.5
1 I C 2 2
1 I C 3 4
2 K C 1 2
2 K C 2 5
2 K C 3 3
3 K S 1 4.5
3 K S 2 5
3 K S 3 3
4 K D 1 1
4 K D 2 7.5
4 K D 3 3'
df <- read.table(text = t, header = TRUE)
这是可重复的数据。
{{1}}