Re: [程式] SAS不同群組的時間相減
※ 引述《MOONY135 (談無慾)》之銘言:
: ------------------------------------------------------------------------
: [軟體程式類別]:
: 請填入軟體程式類別,例如:SAS、SPSS、R、EVIEWS...等
: SAS
: [程式問題]:
: 資料處理、迴歸、敘述統計、logistic、probit...等
: 資料處理
: [軟體熟悉度]:
: 中(3個月到1年
: [問題敘述]:
: 我有一筆資料如下
: 希望作出不同MONBR的最後一筆OTU_TIME-第一筆的IN_TIME 並存到另外一個欄位
: 例如 MONBR A 是
: 27Jun2014 14:57:53-23Jun2014 14:57:50
: MONBR B 是
: 25Jun2014 14:47:18-23Jun2014 14:47:12
: MONBR 班別 IN_TIME OUT_TIME
: A 1 23Jun2014 14:57:50 23Jun2014 14:57:50
: A 2 23Jun2014 14:57:51 23Jun2014 14:57:51
: A 3 23Jun2014 14:57:52 23Jun2014 14:57:52
: A 4 23Jun2014 14:57:53 27Jun2014 14:57:53
: B 1 23Jun2014 14:47:12 23Jun2014 14:47:12
: B 2 23Jun2014 14:47:15 23Jun2014 14:47:15
: B 3 23Jun2014 14:47:18 25Jun2014 14:47:18
: [程式範例]:
我改成這樣 應該是可以了 請大家幫我看看有沒有邏輯上的問題
data step1;
set 資料;
by MONBR;
if first.MONBR then OUTPUT;
if last.MONBR then OUTPUT;
/*這樣會取出同MONBR的第一個班別跟最後一個班別*/
run;
data STEP2;
set STEP1;
by MONBR;
準備用來減的時間=ifn( first.MONBR , (.),lag(IN_TIME));
MONBR_TOTAL_TIME=IN_TIME-準備用來減的時間;
/*如果是同MONBR的第一個班別 就將IN_TIME那欄填上遺漏值
然後把該IN_TIME往下一格 這樣就可以拿來相減*/
run;
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.215.137
※ 文章網址: http://www.ptt.cc/bbs/Statistics/M.1413881672.A.CD6.html
討論串 (同標題文章)