有谁知道如何在 SAS9.3 中将日期变量从 Date9 更改为 MMDDYY10 格式?我尝试使用 put 和 input 函数,但结果为 null
问问题
26623 次
3 回答
2
格式只是关于如何显示值的说明。日期是数字,表示为从 1960 年 1 月 1 日开始的天数。
data x;
format formated1 date9. formated2 mmddyy10.;
noformated = "01JAN1960"d;
formated1 = noformated;
formated2 = noformated;
run;
proc print data=x;
run;
Obs formated1 formated2 noformated
1 01JAN1960 01/01/1960 0
简而言之,只需更改数据集上的格式,日期就会以新格式显示。
于 2013-09-30T22:04:54.123 回答
0
用于更改表中变量的格式 -PROC SQL
或PROC DATASETS
:
data WORK.TABLE1;
format DATE1 DATE2 date9.;
DATE1 = today();
DATE2 = DATE1;
run;
proc contents;
run;
proc datasets lib=WORK nodetails nolist;
modify TABLE1;
format DATE1 mmddyy10.;
quit;
proc sql;
alter table WORK.TABLE1
modify DATE2 format=mmddyy10.
;
quit;
proc contents;
run;
于 2013-10-01T14:27:06.083 回答
0
尝试这两个功能:
tmpdate = put(olddate,DATE9.);
newdate = input(tmpdate,MMDDYY10.);
或者甚至可能
newdate = input(put(olddate,DATE9.),MMDDYY10.);
于 2013-09-30T21:46:39.010 回答