有以下表格数据,我想构建一个新库,算法如下:
caseID相同的人,做如下处理
1、如果首次入院时间(Entdat)和首次诊断时间(Diadat)一致,将首次诊断时间定义为确诊时间(Fin_diagdat),如果不同,将首次入院时间定义为确诊时间;
2、定义最后一次出院时间(Outdat)为失访时间(Losdat);
3、计算确诊时间和失访时间之差为诊断后存活天数(Survday);
4、生成住院次数(Numhos);
5、根据历次住院花费(hoscost)生成总住院花费(totcost)
6、根据住院次数和总花费生存平均花费(avecost)
7、定义首次就诊年龄(diaage)
最终数据库包含变量:name,diaage,sex, caseID, Fin_diadat, Losdat, Survday, Numhos, totcost, avecost每个患者只有一条记录。
推荐采用SAS的SQL语言实现,谢谢啦,^_^
| name | age | sex | caseID | Diagdat | Entdat | Outdat | totcost | 
| SFJ | 40 | 女 | 277270 | 2010-12-24 | 2010-12-24 | 2011-1-28 | 136719.83 | 
| SFJ | 41 | 女 | 277270 | 2011-2-28 | 2011-2-28 | 2011-4-3 | 95801.55 | 
| SFJ | 41 | 女 | 277270 | 2011-5-23 | 2011-5-23 | 2011-6-11 | 54787.56 | 
| SFJ | 41 | 女 | 277270 | 2011-10-6 | 2011-10-6 | 2011-10-25 | 63104.4 | 
| LHS | 56 | 女 | 280785 | 2011-3-1 | 2011-3-1 | 2011-4-4 | 83876.28 | 
| LHS | 56 | 女 | 280785 | 2011-6-24 | 2011-6-24 | 2011-7-20 | 57131.43 | 
| WGS | 58 | 女 | 291083 | 2011-7-19 | 2011-7-19 | 2011-8-26 | 169990.75 | 
| WGS | 58 | 女 | 291083 | 2011-10-6 | 2011-10-6 | 2011-11-15 | 190025.72 | 
| LHM | 55 | 女 | 260754 | 2010-4-1 | 2010-4-1 | 2010-4-23 | 62973.59 |