楼上的方法太复杂了,在DATA 步里用两次output就可以了.
比如在第3 步和最后一步前插入记录,并赋值,这么写就OK
data new;
if _n_=3 or last then do;
x=3;y=5;output;end;
set old end=last;
output;
run;
搞定!
如果是在之后写,稍微复杂一点,但也不难
data new;
set old end=last;
output; /*输出当前记录*/
array char _character_; /*定义所有字符变量为一个数组*/
array num _numeric_; /*定义所有数值变量为一个数组*/
if _n_=3 or last then do; /*在需要插入的记录行处执行以下操作*/
do over char; char=''; end; /*把所有字符变量清空*/
do over num num=.;end; /*把所有数值变量清空*/
x=3;y=5; /*对需要赋值的变量进行赋值*/
output;end; /*再输出一次,即插入*/
run;
[此贴子已经被作者于2008-3-18 16:54:34编辑过]