立即注册 登录
公卫人 返回首页

asteriod的个人空间 https://www.epiman.cn/?12177 [收藏] [复制] [RSS]

日志

利用SAS/PROSUMMARY对数据库进行查重

已有 468 次阅读2009-4-2 00:00 |

SAS中sort过程的选项nodup和nodupkey非常好用,nodup对数据库中整条记录相同做删除,nodupkey对by变量相同的记录做删除。均可以把做删除后的记录输出(out选项)到一个数据集中。

但是,如果就想看一下哪些整条记录相同,或者按某几个变量查是相同的,sort过程似乎就不能解决这个问题了。此时,proc summary该闪亮登场了!

看下面的程序:

data b;
input id $ a b c;
cards;
001 1  20
002 2  18
003 3  35
004 4  40
002 2  27
006 5  40
004 4  60
;
run;
proc summary data=b nway;
class id a b;
output out=c (drop=_type_  where=(_freq_>1));
run;
proc print data=c;
run;

结果如下:

                                Obs    id         _FREQ_

                                    002           2
                                    004           2
有没有表达清楚呢?

如果还没有,请再看以下程序及结果吧:

程序:

proc sort data=b nodupkey out=d;
by id a b;
run;
proc print data=d;
run;

结果:

                                  Obs    id          c

                                      001        20
                                      002        18
                                      003        35
                                      004        40
                                      006        40

OK,就暂到此啦!Good luck!


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

手机版|会员|至尊|接种|公卫人 ( 沪ICP备06060850号-3 )

GMT+8, 2024-5-16 19:14 , Processed in 0.032372 second(s), 5 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

返回顶部