SAS将日期插入宏变量,然后插入数据集

时间:2013-05-29 21:12:51

标签: date sas sas-macro

对我们这些人来说,我的问题可能很简单,对我而言,这是一个很大的障碍:D。

我需要与用户建立一个交互窗口,在该窗口中他可以编写日期,他希望看到这些数据(用于回归的记录)。

%let dateP;
%window wprowadz
"insert date (ddmmyyyy):" dateP required = yes;
%display wprowadz;

之后

data lab4.firmy2;
set lab4.firmy;
if first.nazwa then
    data=symget("dataP");
    zamkniecie=.;
keep nazwa data zamkniecie;
by nazwa;

这当然将所需的表达式放入宏变量中。试图将其放入数据集只会在天数(例如17168)中在窗口中插入日期时产生结果。但这还不够。

我需要的是能够以yyyy-mm-dd或dd-mm-yyyy的格式插入日期,然后将其转换为数天,以便我可以整齐地使用它。我已多次尝试但没有结果。

任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:2)

这样的事情应该有效。使用您的首选信息从文本字符串输入。

data lab4.firmy2;
set lab4.firmy;
if first.nazwa then do;
    data=input("&datap.",YYMMDD.);
    zamkniecie=.;
end;
keep nazwa data zamkniecie;
by nazwa;

您是如何与用户交互的(Base SAS或EG)?如果您在EG,我认为提示管理员可以为您快捷一些。