SAS中文论坛

标题: 请问有没有办法,写个宏,只要改参数不用改程序,就能提取我需要的数据? [打印本页]

作者: shiyiming    时间: 2013-1-3 13:04
标题: 请问有没有办法,写个宏,只要改参数不用改程序,就能提取我需要的数据?
我的数据是这样的
ID        yymc                 yysj
1        头孢唑林钠        2012-11-6 08:09
2        肝素                 2012-11-6 08:35
3        氨甲环酸                 2012-11-6 08:36
4        头孢唑林钠        2012-11-6 11:00
5        硝酸甘油                 2012-11-6 10:35
6        万古霉素               2012-11-6 10:54
7        头孢呋辛钠        2012-11-6 11:00
8               ……
我需要提出其中特定的数据:如提取含有“头孢唑林”字样的记录,提取含有“万古”字样的记录
下面程序可以实现这个需求,但是如果我要提取的含有“头孢呋辛”字样的记录,我就需要修改程序了
请问有没有办法,写个宏,只要改参数不用改程序,就能提取我需要的数据啊?
谢谢


[code:11go60n9]data bbs;
input ID yymc $10. @@;
cards;
1 头孢唑林钠
2 肝素
3 氨甲环酸
4 头孢唑林钠
5 硝酸甘油
6 万古霉素
7 头孢呋辛钠
;
proc sql;
   update bbs set yymc='头孢唑林钠'  where yymc like '%头孢唑林%';
   update bbs set yymc='万古霉素'  where yymc like '%万古%';   
quit;
/*将已经标准化的记录提取出来,建立cbs数据集*/
data cbs;
   set bbs;
   if yymc="头孢唑林钠"  then output;
   if yymc="万古霉素"  then output;
run;
proc print;run;[/code:11go60n9]




欢迎光临 SAS中文论坛 (http://www.mysas.net/forum/) Powered by Discuz! X3.2