道歉,如果之前已经回答过,但我发现很难找到我的R问题的答案!
我的问题涉及如何以有用的方式存储多个anovas的结果。
我正在使用' aov'对数据框的子集执行anovas,使用以下函数一次比较两个数据帧:
doAnova = function(first, second) {
aov(number ~ factor1+factor2, data=rbind(first, second))
}
这用于比较每个子集与基数'案例,检查是否存在重大差异。要在多个数据集上执行此操作,我在循环中使用它:
for (name in names) {
result = summary(doAnova(base,subject))
}
我希望将此结果存储在数据框中,每行包含' name'和结果'值。
到目前为止,我已经尝试了存储名称和结果的列表和向量,然后尝试从这些创建数据框,但是没有设法实现这一点。
我知道这可能很简单,但有人能帮忙解决这个问题吗?
由于
答案 0 :(得分:1)
您似乎正在对分析所有数据然后进行事后测试以检查子集比较的更标准做法进行最终处理。统计人员通常认为这是无原则的数据疏浚。 aov
的帮助页面也说明了:
aov
专为平衡设计而设计,如果没有平衡,结果很难解释:请注意,响应中的缺失值可能会失去平衡。“
所以我认为你应该用识别因子变量编码你的子集,并使用R提供的设施来分析不平衡设计,即lm
。只有在您以全局方式检查估计效果后,才应转向适当的 post-hoc 测试,以便对多重比较问题进行原则性更正。