2016-01-26 99 views
0

我有如下數據集。統計連續數字在sas中的數據步驟

accntid month flag output 
123  201501 1  1 
123  201502 .  
123  201503 1  2 
123  201504 1  2 
123  201505 . 
123  201506 1  3 
123  201507 1  3 
123  201508 1  3 

我想計算輸出列中的計數連續標誌。 我想過使用保留和滯後,但無法成功實施。

提前致謝!

+0

請發表您的評論 – Reeza

回答

2

使用雙DOW循環。第一個將記錄記錄的數量,第二個將輸出數據。使用BY語句中的NOTSORTED選項讓SAS定義組。

data want ; 
    do until (last.flag); 
    set have ; 
    by accntid flag notsorted ; 
    if flag=1 then output=sum(output,1) ; 
    end; 
    do until (last.flag); 
    set have ; 
    by accntid flag notsorted ; 
    output; 
    end; 
run;