[程式] SAS 時間區間分組問題
[程式] SAS
[軟體程式類別]: SAS
[程式問題]:
資料處理
[軟體熟悉度]:
新手逐漸熟悉中
[問題敘述]:
想要將同一ID的人,將其開藥時間區間,進行編組。
兩次開藥時間,則是將此次開始起使日,減上次開藥結束日;
如<=120天,視為同一組;>120天者,則是給予新的編號。
希望能夠呈現如Group此變項分組。
資料如下:
ID 開藥起始日 開藥結束日 該次開藥天數 兩次開藥時間差距) Group
(Drug_start) (Drug_end) (Drug_day) (Dif_Days)
AAA 20080605 20080618 14 1 1
AAA 20100311 20100317 7 631 2
AAA 20100318 20100331 14 1 2
AAA 20110616 20110713 28 442 3
AAA 20111124 20111221 28 134 4
AAA 20121115 20121212 28 330 5
AAA 20121207 20130103 28 -5 5
AAA 20130110 20130206 28 7 5
AAA 20130418 20130515 28 71 5
AAA 20130530 20130626 28 15 5
AAA 20130706 20130802 28 10 5
AAA 20130727 20130823 28 -6 5
[程式範例]:
DATA Final;
SET data;
by ID Drug_start
if first.ID then group=1;
if Dif_Days<=120 then group=1;
else group+1;
run;
這個程式,一直無法順利分組如grpup所示,請各位提供指點。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.72.12.140
※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1477049574.A.ABE.html
→
10/24 13:29, , 1F
10/24 13:29, 1F
→
10/24 13:30, , 2F
10/24 13:30, 2F
→
10/24 13:30, , 3F
10/24 13:30, 3F
→
10/24 13:31, , 4F
10/24 13:31, 4F
→
10/24 13:32, , 5F
10/24 13:32, 5F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):