表的sas参考单元格值

时间:2019-06-23 12:19:32

标签: sas

我正在尝试引用统计表中的值,例如:

/* Calculate Median and IQR */
PROC UNIVARIATE DATA = kddcup98(drop=TARGET_B) OUTTABLE= boxStats(keep=_VAR_ _Q1_ _Q3_ _QRANGE_) NOPRINT;
RUN; 

/* Calculate upper and lower bounds */
DATA boxStats;
   SET boxStats;
   upper_bound = _Q3_ + 1.5*_QRANGE_;
   lower_bound = _Q3_ - 1.5*_QRANGE_;
RUN;


DATA kddcup98_continuous;
   SET kddcup98_continuous;
   ARRAY Num_Col[*] _NUMERIC_;
      DO i = 1 to dim(Num_Col);
         IF Num_Col[i] > boxStats[i, "upper_bound"] OR Num_Col[i] < boxStats[i, "lower_bound"] THEN Num_Col[i] = .;
      END;
RUN;

我有主数据表和统计信息表,根据这些表我可以计算上下限。我需要从boxStats表中引用这些值。如何引用这些值?

1 个答案:

答案 0 :(得分:0)

使用OUTTABLE PROC语句选项。

OUTTABLE = SAS数据集 创建一个包含以表格形式排列的单变量统计信息的输出数据集,每个分析变量一个观察值。有关详细信息,请参见OUTTABLE =输出数据集。