【发布时间】:2016-01-16 20:29:46
【问题描述】:
以下是简单的SAS程序:
data mydata;
do group = 'placebo', 'active';
do subj = 1 to 5;
input score @;
output;
end;
end;
datalines;
250 222 230 210 199
166 183 123 129 234
;
我正在自学 SAS。所以我想确定这里发生了什么。据我了解,5 个条目的第一行属于安慰剂组,第二行属于活跃组。起初,输入缓冲区包含 5 个数字的第一行,do subj=1 to 5 将它们一个一个打印出来,直到当前数据步迭代结束。然后,数据步骤继续进行第二次迭代。这种理解正确吗?非常感谢您的时间和关注。
附言。我只想确定何时释放当前输入缓冲区。上网查了一下,发现@的用途如下:
保存一个输入记录,用于在 DATA 步的同一迭代中执行下一个 INPUT 语句。此行保持说明符称为尾随@。
因此,如果满足以下两个条件之一,则意味着释放输入缓冲区:
(1):一个新的输入语句在没有任何@ 或@@ 的情况下被满足。 (2):当前数据步迭代结束。
非常感谢任何 cmets。
【问题讨论】:
标签: sas