我必須將格式更改爲SAS
表格中的單個單元格。也就是說,單元格所在的列的格式爲best12.
,但在單元格中給定了日期,因此我想使用YYMMDD10.
如何將格式更改爲SAS表格中的單個單元格
我該如何解決?
在此先感謝。
我必須將格式更改爲SAS
表格中的單個單元格。也就是說,單元格所在的列的格式爲best12.
,但在單元格中給定了日期,因此我想使用YYMMDD10.
如何將格式更改爲SAS表格中的單個單元格
我該如何解決?
在此先感謝。
您只能將FORMAT與整列相關聯。如果您希望混合類型的單元格格式不同,則需要一個將PUT(函數)值放入的字符列。
將不同的格式與列使用關聯。
proc datasets;
modify data-set-name;
format variables new-format.;
run;
quit;
下面是如果數據允許,您可以做什麼的示例。假設您的數據中最早的日期是2000年1月1日,那麼SAS中的數字將保存爲14,610(1960年1月1日以來的天數)。因此,如果沒有非日期值超過這個數,那麼你可以通過多達14610格式化所有值best12.
實現你的目標,所有值大於該值作爲yymmdd10.
proc format;
value dtfmt low - 14609 = [best12.]
14610 - high = [yymmdd10.]
;
run;
data want;
input num;
format num dtfmt.;
datalines;
10
20
20514
30
;
run;
可以在IF
條件檢查申請SUBSTR()
第一個字符並相應地格式化您的變量。使用INPUT()
或PUT()
不包含日期的單元格中的值是什麼?可以創建自定義格式來執行您想要的操作,但這隻適用於某些情況,例如如果日期值和非日期值之間沒有重疊 – Longfish