[程式] SAS日期相減

看板Statistics作者 (享)時間12年前 (2013/05/24 16:09), 編輯推噓4(402)
留言6則, 4人參與, 最新討論串1/1
[軟體程式類別]: SAS [程式問題]: SAS日期相減 [軟體熟悉度]: 新手(不到1個月) [問題敘述]: 想算出兩個資料(data1)日期間的差距 但是目前資料的形態是"數值" id T1 T2 T3 A1 . 20010504 20020310 A2 20061208 . 19970512 A3 . . 20070103 資料可能有缺失 目前要處理的是 挑出id中最小的(最早的)發生點 如A1是T2 然後以該點為基準 去算T2跟T3差了多少時間 我用的是intck 但跑出來的都是缺失值 冏 後來轉換成日期 data data2; set sata1; informat T1 yymmdd8. T2 yymmdd8. T3yymmdd8.; run; 還是一樣變成缺失值 想請問板上高手的意見 [程式範例]: firstdate=min(T1,T2,T3); d1=intck('day',firstdate,T1); d2=intck('day',firstdate,T2); d3=intck('day',firstdate,T3); run; ----------------------------------------------------------------------------- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.83.97

05/24 16:20, , 1F
intck只能用於時間格式的資料 你要想辦法讀成日期格式的資料
05/24 16:20, 1F

05/24 16:43, , 2F
可是我用informat那句不就轉換了嗎@@?
05/24 16:43, 2F

05/24 19:54, , 3F
轉換日期格式可用mdy 或 input(變數,yymmdd10.)等方法
05/24 19:54, 3F

05/24 22:40, , 4F
informat沒有把它轉成時間格式
05/24 22:40, 4F

05/25 03:04, , 5F
1.informat的功能不是轉換
05/25 03:04, 5F

05/25 03:05, , 6F
2.如果是正確日期,要算差距幾天不需要intck,直接相減即可
05/25 03:05, 6F
文章代碼(AID): #1Hdo0kS5 (Statistics)