我对 SAS 使用“包含”方法在混合模型中获得自由度的方式有疑问。特别是,我认为 SAS 在为最小二乘均值获取 df 时做错了(同时为比较做正确的事情)。
为了说明,请考虑该MIXED
过程文档中提供的第一个示例。它包括一个有 4 个块的平衡裂区实验。每个块分为 3 个地块,分配到A
. 每个地块分为 2 个子地块,分配到B
. SAS 语句是
proc mixed data = sp;
class Block A B;
model Y = A B / ddfm = contain;
random Block A*Block;
lsmeans A B / diff;
我关心的是LSMEANS
声明的结果
Least Squares Means
Standard
Effect A B Estimate Error DF t Value Pr > |t|
A 1 32.8750 4.5403 6 7.24 0.0004
A 2 34.1250 4.5403 6 7.52 0.0003
A 3 25.7500 4.5403 6 5.67 0.0013
B 1 33.6667 4.2279 11 7.96 <.0001
B 2 28.1667 4.2279 11 6.66 <.0001
Differences of Least Squares Means
Standard
Effect A B _A _B Estimate Error DF t Value Pr > |t|
A 1 2 -1.2500 3.1672 6 -0.39 0.7067
A 1 3 7.1250 3.1672 6 2.25 0.0655
A 2 3 8.3750 3.1672 6 2.64 0.0383
B 1 2 5.5000 1.5546 11 3.54 0.0046
这些表明 LS 均值A
或其比较均具有 6 df,而 LS 均值B
或其比较均具有 11 df。
我的理解是,收容被认为是一种保守的方法——即,在获得自由度方面犯了错误。因此,我对比较的 df 没有异议,但我认为 ls 的 df 意味着它们本身是不正确的——对于A
和B
。
我的理由是:让表示对第块,的第A
, 和的第 级B
;然后让表示观察到的平均值th 水平A
(等于它的 LS 均值,因为数据是平衡的)。也让,, 和分别表示块、图(A*Block
交互)和误差范围内的方差分量。现在,是所有这三个方差的加权和,而对于这些均值的比较,只涉及和因为当我们计算差异时,块效应会抵消。因此,如果我们试图保守,比较的自由度应该是 6,因为这是涉及的最粗略的随机分组的自由度,例如图。然而,这些A
手段本身包括块效应,所以它们最粗略的分组是块,它只有 3 个 df。
同样,对于B
手段,涉及所有三个方差,因此估计它的自由度应该是 3,即块的自由度。同时为了比较,只涉及因为块和情节效应抵消了。因此,使用残差 df 进行B
比较是正确的,但不适用于B
均值。
作为附加信息的一点,如果您在示例代码中替换ddfm = contain
为ddfm = satterth
,得到的自由度是 4.2 A
, 3.21 B
,差异 6,A
差异 11 B
。所以相对于 Satterthwaite,遏制高估了手段本身的 df,而我对每个使用 3 个 df 的想法低估了 df。
总而言之,在估计参数时,“包含”是否应该与哪些方差分量起作用,然后选择估计这些方差分量所涉及的最小自由度?