我有dataset A, 含有一列元素mw,我想把新建一列元素new_mw,将第一行设为. 其他依次下移,最后一个元素舍弃。
mw newmw
1 .
2 1
3 2
4 3
5 4
6 5
我是这么写的
data dummy;
input mw;
datalines;
.
;
run;
proc append base=dummy data=A;
run;
data dummy;
set dummy end=last;
if last then delete;
run;
data dummy;
set dummy;
newmw=mw;
keep newmw;
run;
data A;
merge A dummy;
run;
我觉得写的太丑陋了,我想请教各位怎么样写的简洁一点,谢谢.
另外,因为这个处理方法我在程序中需要用很多次,我希望可一写成macro,但是
data dummy;
input mw;
datalines;
.
;
run;
貌似不能写在macro中,所以我希望可以改进程序。