【发布时间】:2015-01-01 11:48:16
【问题描述】:
当我尝试对日期变量进行格式化时遇到错误。
这就是我的日期变量值看起来像“26-Dec-58strong>”的样子
"$DATE 格式未找到或无法加载"
错误的原因是我的日期值在数据集中存储为 char 变量,因此在我格式化变量时它不接受数字变量的格式。
所以我想在不引入新变量的情况下将我的日期(这是一个字符)变量转换为数值变量。
我尝试了 datepart 和 substring 选项,但仍然出现错误。
我仍处于 sas 的学习阶段,因此感谢任何清除错误的代码我知道这个概念,但我尝试了所有我知道的编码,但仍然没有运气。
当前代码:
data Practice.Sales;
set Practice.Sales;
Birthdate = '26-Dec-58';
Purchase_Dt = '15-Sep-04';
t_num_date = input(Birthdate, ddmmyy8.);
t_num_date1 = input(Purchase_Dt, ddmmyy8.);
drop Birthdate Purchase_Dt;
format Birth_date ddmmyy8. PurchaseDt ddmmyy8. Price DOLLAR10.2;
rename t_num_date = Birthdate;
rename t_num_date1 = Purchase_Dt;
run;
【问题讨论】:
-
这引出了一个问题 - 如果您对日期进行硬编码,为什么不首先将它们定义为日期?
Birthdate = '26Dec1958'd; format Birthdate date9.; -
无论如何,这些语句不会产生上述错误。您还没有向我们展示什么?