使用SAS中的对比度或估计值比较变量组合

时间:2015-12-16 21:01:43

标签: sas contrast mixed

所以,这应该是一个简单的,但我总是对比垃圾,SAS文献并没有真正帮助。我们正在进行分析,我们需要比较不同的变量组合。例如,我们有8种不同的品种和3种处理,并希望在处理1时将品种5与品种7进行对比。我编写的代码是:

proc mixed data=data;
class breed treatment field;
model ear_mass = field breed field*breed treatment field*treatment breed*treatment;
random field*breed*treatment;
estimate "1 C0"
breed 0 0 0 0 1 0 -1 0 breed*treatment 0 0 0 0 1 0 0 0 -1 0 0; 
run;

我的估算线中究竟出现了什么问题?

2 个答案:

答案 0 :(得分:1)

此特定比较的对比度声明还必须包含品种*字段的系数。

在定义对比时,我建议从小开始建立。在时间1(B5T1)写出品种5的对比,并检查其对lsmean的值,以确认您已获得正确的系数。 请注意,您必须对所有字段级别进行平均才能获得此估算值。同样,请为B7T1写入对比度。然后从B7T1的系数中减去B5T1的系数,注意某些项(例如,治疗*字段)的系数现在都为零。

更简单的替代方法是使用LSMESTIMATE语句,该语句允许您使用lsmeans而不是模型参数来构建对比。请参阅文档和本文Kiernan et al., 2011, CONTRAST and ESTIMATE Statements Made Easy:The LSMESTIMATE Statement

答案 1 :(得分:0)

唉,你必须告诉SAS,它不能告诉你。

你是对的,很容易犯错误。重要的是要知道交互中因子水平的顺序,这是由因子中的因子顺序决定的 CLASS声明。您可以通过查看LSMEANS表中交互lsmeans的顺序来确认排序。

要检查您是否可以使用lsmeans手动计算对比度的估计值。如果它匹配,那么您可以确信标准错误,以及推理测试也是正确的。

LSMESTIMATE是一个非常有用的工具,比使用模型参数定义对比更快且更不容易出错。