作者bbearh (go)
看板Statistics
标题Re: [程式] sas删除、加总
时间Mon Feb 25 23:42:47 2013
※ 引述《lena0425 (lena)》之铭言:
: [问题叙述]:
: 想要将同一个人,同一年的疾病代码相同的删除,
: 并且算总共有多少个代码
: [程式范例]:
: id icd01 icd02 icd03 year
: 1 A12 B20 1997
: 1 S13 A12 B20 1997
: 1 W9 A12 1998
: 则1997年 共有3种疾病: A12、B20、S13
: (同一年同一人重复的只算一种)即 --> serious=3
: 1998年,共有2种疾病A12、W9--->serious=2
: 想要的结果:
: id year serious
: 1 1997 3
: 1 1998 2
: 不知道如何写指令><
: 谢谢各位大大帮忙
data d1;
input id icd1$ icd2$ icd3$ year;
cards;
1 A12 B20 . 1997
1 S13 A12 B20 1997
1 W9 A12 . 1998
;
run;
data a1;
set d1;
ds=icd1;
keep id year ds;
run;
data a2;
set d1;
ds=icd2;
keep id year ds;
run;
data a3;
set d1;
ds=icd3;
keep id year ds;
run;
data all;
set a1 a2 a3;
if ds='' then delete;
run;
proc sql;
create table xxx as
select distinct id, year, ds
from all;
proc sql;
create table xxx2 as
select distinct id, year, count( ds)
from xxx
group by id, year;
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.204.2.248
1F:推 lena0425:谢谢你~我和我同学得救了XD 02/26 14:45