我的数据有3个独立变量,所有变量都是分类的:
condition: cond1, cond2, cond3
population: A,B,C
task: 1,2,3,4,5
因变量是任务完成时间 . 我在R中运行 lm(time~condition+user+task,data)
并获得以下结果:
令我困惑的是,cond1,groupA和task1被排除在结果之外 . 从线程linear regression "NA" estimate just for last coefficient,我理解一个因子级别被选为"baseline"并显示在(拦截)行中 .
但是,如果有多个因子水平用作基线,如上所述呢?
-
(拦截)行现在是否表示cond1 groupA task1?
-
如果我想分别了解cond1,groupA和task1的系数和重要性怎么办?
-
例如,与groupA相比,groupB的估计系数为9.3349?或者与cond1 groupA task1相比?
3 回答
您的人口中的一个人必须为每个变量“条件”,“人口”和“任务”设置一个值,因此基线个体必须具有每个变量的值;在这种情况下,cond1,A和t1 . 所有结果都基于具有这些自变量的理想(平均)个体,因此截距确实给出了cond1,groupA和task1的平均时间值 .
cond1,groupA或task1的显着性或系数没有意义,因为显着性意味着一个组和参考组之间的显着不同的平均值 . 您无法将参考组与其自身进行比较 .
由于你的模型没有相互作用,groupB的系数意味着人口B中某人的平均时间将比人口A中某人的时间高9.33(秒?),无论他们正在执行的条件和任务如何,以及p值非常小,您可以认为人口B中的人与参考人群中的人之间的平均时间实际上是不同的(A) . 如果您向模型添加了交互项,则这些术语(例如
usergroupB:taskt4
)将表示如果个人同时具有这两个条件,则向平均时间添加(或减去)额外值(在此示例中,如果个人来自人口B和已完成任务4) . 这些影响将被添加到边缘影响中(usergroupB
和taskt4
) .希望我帮忙 .
是 .
想想具体意义何在 . 你需要制定一个假设 . 在你的例子中,所有内容都与截距进行比较,你的问题并没有多大意义 . 但是,您始终可以在所有可能的效果组合之间进行成对比较(请参阅包multcomp) .
这是cond1 / task1 / groupA和cond1 / task1 / groupB之间的区别 . (正如@Rufo正确指出的那样,它当然是一个整体效果,实际上groupB和groupA之间的差异提供了其他效果相同 . )
默认情况下,R对分类变量使用处理对比 . 因此,第一级被视为基级 . 将所有剩余水平与基准水平进行比较 .
对于
condition
,您的基本级别为cond1
,population
为A
,task
为1
. 所有系数都是根据这些基准水平估算的 .截距只是三个基本级别中响应变量的平均值 .
例如,效果
conditioncond2
是cond2
和cond1
之间的差异,其中population
是A
,task
是1
. 因此,系数不会告诉您有关条件之间的总体差异的任何信息,而只会告诉您与基本级别相关的数据 . (类似地,conditioncond3
是cond3
和cond1
之间的区别 . )其他因素也是如此 .
population
的效果仅适用于condition
cond1
和task
1
.task
的效果仅适用于condition
cond1
和population
A
.