Proc Reg使用新的观察结果进行预测

时间:2014-10-06 07:43:49

标签: statistics sas

我正在尝试基于SAS中的线性模型创建预测区间。我的SAS代码是

proc reg data=datain.aswells alpha=0.01;
model arsenic = latitude longitude depth_ft / clb;
run;

我希望与latitude=23.75467longitude=90.66169depth_ft=25建立95%的预测间隔。此数据点在数据集中不存在,但它在用于计算模型的值范围内。在SAS中有没有简单的方法来实现这一目标?难道没有办法在SAS中轻松计算这个预测区间吗?

1 个答案:

答案 0 :(得分:2)

最简单的方法是将其添加到输入数据集中,并为ARSENIC提供缺失值。然后使用OUTPUT语句输出预测区间。

以下是一个例子:

data test;
do i=1 to 100;
    x1 = rannor(123);
    x2 = rannor(123)*2 + 1;
    y = 1*x1 + 2*x2 + 4*rannor(123);
    output;
end;
run;

data test;
set test end=last;
output;
if last then do;
    y = .;
    x1 = 1.5;
    x2 = -1;
    output;
end;
run;

proc reg data=test alpha=.01;
model y = x1 x2;
output out=test_out(where=(y=.)) p=predicted ucl=UCL_Pred lcl=LCL_Pred;
run;
quit;

输出上的WHERE子句将结果集过滤为仅预测的缺失值。您可以删除它并获取所有预测值和预测间隔。

相关问题