【问题标题】:SAS: Automatically pass variables from proc reg to proc scoreSAS:自动将变量从proc reg传递到proc score
【发布时间】:2014-02-26 18:35:03
【问题描述】:

我正在运行包含 proc reg 和 proc score 的多个序列交互。如何自动将预测变量从 proc reg 传递到 proc score 中的 var list?我知道在 proc reg 中,outest 输出一个数据集,其中包含所有变量,其中预测变量填充了估计值。在该数据集中,非预测变量具有缺失值。 proc reg 是否允许一种简单的方法来仅捕获预测变量?

谢谢!

【问题讨论】:

  • 您能否提供在 OUTEST= 数据集中给出缺失值的示例代码?

标签: sas regression procedure


【解决方案1】:

解决此问题的一种方法是使用宏变量。

%let varlist = x1 x2 x3 x4;

proc reg data = somedata outest = out;
    model y = &varlist;
run;
quit;

data _null_;
    length newvars $ 2000;
    set out;
    array v{*} &varlist;
    do i = 1 to dim(v);
        if v[i] ne . then newvars = catx(" ", newvars, vname(v[i]));
    end;
    call symputx("newvars", newvars);
run;

%put Predictors=&newvars;

proc score data = somedata;
    var &newvars;
run;

这会从 PROC REG 创建一个以空格分隔的预测变量列表,并在 PROC SCORE 的 VAR 语句中使用该列表。这种方法假设您的 OUTEST 数据集中只有一个模型。但如果情况确实如此,那么 OUTEST 数据集中的预测变量不应该有任何缺失值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 1970-01-01
    • 2023-04-08
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多