我正在处理处方索赔数据。受试者X有20行显示他填写处方的日期。观察5他每月填写处方。这是时间集合1.下一个观察的填充日期为2年,并且每月填充接下来的15行。这是时间集2。
问题:我如何计算每次集团的药物治疗时间?我不想包括x年未填写处方的2年时间框架。
答案 0 :(得分:0)
可以分两步完成:首先,我们“标记”块;然后将它们分组。 您的数据集应按主题和日期(升序)进行预分类。
data have2;
set have;
by Subject;
if Date-lag(Date)>30 then Block+1;
if FIRST.Subject then Block=1;
run;
proc sql;
create table blocks as
select Subject, Block, max(Date)-min(Date) as Duration
from have2
group by Subject, Block;
quit;