OUTPUT语句
(1)将当前观测值写入正在建立的数据集中,将每一次循环的累加结果输出到数据集,若无OUTPUT,仅输出最后一个值。
(2)指定输出数据结果存放在指定的数据集中。
示例1
创建数据集test,输入id,a1,a2,a3,以第一行为例:id=123,a1=55,a2=60,a3=65。然后分别将a1,a2,a3赋给b,无OUTPUT,最终b=a3覆盖a1,a2,只输出b=a3,只输出最后一个值。有OUTPUT,依次将a1,a2,a3赋给b,并将3个观测值全部依次输出。
示例2
(2)指定输出数据结果存放在指定的数据集中,将sex="M"输出(OUTPUT)到 boy的数据集中,sex=“F” 输出(OUTPUT)到girl数据中。
代码
示例1
data test;
input id a1-a3;
b=a1;
b=a2;
b=a3;
cards;
123 55 60 65
132 70 75 80
114 85 90 95
proc print;
run;
示例2:
data boy girl;
set test2;
if sex="M" then output boy; /*将sex="M",满足条件的观测值输出到boy数据集*/
else output girl; /*将不满足sex="M"条件的观测值输出到girl数据集*/
proc print data=test2;
title"boy+girl";
run;
proc print data=boy;
title"boy";
run;
proc print data=girl;
title"girl";
run;