我正在編寫一個SAS代碼,並且因爲我是SAS新手(一直在研究R),所以我無法理解SAS中的日期格式。如果SAS中的其他錯誤
我有一個SAS數據集Sales_yyyymm和我創建,需要一個日期值的用戶輸入一個代碼,如果存在該日期的銷售數據,我需要創建一個標誌爲1,否則爲0。目前我使用此代碼 - 在我的SAS數據
%Let check_date = 20010120;
Data A;
Set B;
If date=&check_date then Date_Flag = 1;
else Date_Flag = 0;
run;
日期是日期列設置Sales_yyyymm和值都喜歡20130129,20110412,20140120等
但是,如果我運行這個代碼,我ge將我所有的Date_Flag值都設爲0. IF條件被忽略,我不確定這是怎麼發生的或爲什麼發生。
有什麼想法?
謝謝!
整數I懷疑'date'列是INFACT其被格式化爲顯示爲YYYYMMDD即日期,日期不是8DIGIT整數。檢查'proc內容數據= <你的數據集>;運行;輸出並報告日期類型和格式列 – 2014-02-25 14:16:10
另一件事 - 在SAS日期字面值應該是「DDMMMYYYY」d格式。如果實際上「日期」列確實存儲爲日期類型列,這將很重要。 – 2014-02-25 14:17:22
我剛剛檢查並發現'date'列的類型是NUM和Len 4,格式是YYMMDDN8。 – RHelp