我有一個Excel與可以爲空或包含日期值的列文件,但將它導入到SAS,當我需要的列在格式爲DATE9
。只要列不是完全空它的工作原理,但在某些情況下,將它導入到SAS
爲$CHAR1
。如何強制列在Excel沒有價值觀導入的日期列
單元格的格式已經date
如果有差別。
我有一個Excel與可以爲空或包含日期值的列文件,但將它導入到SAS,當我需要的列在格式爲DATE9
。只要列不是完全空它的工作原理,但在某些情況下,將它導入到SAS
爲$CHAR1
。如何強制列在Excel沒有價值觀導入的日期列
單元格的格式已經date
如果有差別。
好吧,我假設你有SAS進入然後行貨PC文件格式。您應該能夠使用數據集選項DBSASTYPE,這會強制SAS使用所述的數據類型,而與輸入數據的外觀無關。在你的情況下,你希望它設置爲數字,那麼你可以使用DATE9。對其進行格式化。代碼應該如下所示,我現在無法對其進行測試。
DATA WORK.excel_file;
set excel.spreadsheet (dbsastype=(column_name=numeric));
format column_name date9.;
run;
我認爲你需要重新定義列在導入後。 事情是這樣的:
data importedExcel(drop=suspiciousVariable2);
set importedExcel(rename=(suspiciousVariable=suspiciousVariable2));
attrib suspiciousVariable length=8 format=date9.;
suspiciousVariable=suspiciousVariable2 + 0;
run;
如果導入與數據的步驟,而不是PROC進口,你可以很容易地定義每個變量的格式。下面的鏈接提供了相當不錯的例子:http://www2.sas.com/proceedings/sugi30/038-30.pdf
您使用什麼方法? (proc導入,數據步驟等)和你有什麼版本的SAS? – Longfish 2014-10-01 15:08:58
@Keith'DATA WORK.excel_file;'至於SAS版本'SAS Enterprise Guide 5.1' – stef52 2014-10-01 15:31:53