SAS学习笔记(二)

来源:互联网 发布:网络交流的利与弊英语 编辑:程序博客网 时间:2024/05/21 11:33

SAS中nodupkey和nodup的区别

 
翻译与总结自:http://hi.baidu.com/yoyo_1828/blog/item/2dc41791fbd46282a877a4c9.html

1. nodupkey会把同by variable里变量有相同值的observation都删掉。这些observation包括那些与by variable里变量有相同值,但与剩下变量有不同值的observation。如,
input id1 $ id2 $ extra ;
cards;
aa ab 3
aa ab 3
aa ab 2
aa ab 1
;

proc sort nodupkey data=test3;
by id1 id2;
run;
options nocenter;
proc print data=test3;
run;
Obs id1 id2 extra

1 aa ab 3

2. nodup会把那些与by variable里变量有相同值的observation删掉,如

data test2;
input id1 $ id2 $ extra ;
cards;
aa ab 3
aa ab 3
aa ab 2

aa ab 1
;

proc sort nodup data=test2;
by id1 id2;
run;
options nocenter;
proc print data=test2;
run;
Obs id1 id2 extra

1 aa ab 3
2 aa ab 2
3 aa ab 1
但要注意的是nodup只会把相邻的且仅具有相同by variable变量值的observation删掉,如
data test1;
input id1 $ id2 $ extra ;
cards;
aa ab 3
aa ab 1
aa ab 2
aa ab 3
;
proc sort nodup data=test1;
by id1 id2;
run;
options nocenter;
proc print data=test1;
run;
Obs id1 id2 extra

1 aa ab 3
2 aa ab 1
3 aa ab 2

4 aa ab 3
转自:http://blog.sina.com.cn/s/blog_632721090100puep.html

原创粉丝点击