【问题标题】:SAS global date display format defaultSAS 全局日期显示格式默认
【发布时间】:2019-05-15 20:55:55
【问题描述】:

我知道我可以使用以下方式更改 SAS 中日期变量的显示格式:

data junk0;
    x = date();
    format x yymmddd10.;
run;

有人可以告诉我如何设置 date 变量的默认显示格式 为系统默认以外的其他内容:date9.

您的解决方案如下:

<your SAS magic here>
data junk1:
    x = date();
    y = date()-1;
run;

将正确格式化xy,因为它们是date 变量。

我做了一些功课,但以下链接都没有(虽然很好),请帮我解决这个问题:

【问题讨论】:

    标签: sas


    【解决方案1】:

    没有系统默认显示值。您可以决定要为每个变量附加什么(如果有)显示格式。

    SAS 数据集只有两种类型的变量,定长字符和浮点数。 DATE 值仅在您决定为其附加日期类型格式并用于 MONTH()、DAY()、INTNX() 等需要日期值的函数时才被视为日期。

    【讨论】:

    • 那肯定很不方便! :-)
    • 实际上效果很好。尤其是考虑到它是 1970 年代初期设计的系统。
    • 但是您可以使用宏然后调用以标准化日期的输出,请参阅我的答案!
    【解决方案2】:

    您可以添加一个宏,然后在您想要的所有日期上调用该宏...这并不理想,但它会起作用。

    %macro date_standard(date=);
        put(&date.,yymmdd10.);  
    %mend;
    data junk1;
        x = %date_standard(date=date());
        y = date()-1;
    run;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-12
      • 1970-01-01
      • 1970-01-01
      • 2019-11-22
      • 1970-01-01
      • 2018-02-12
      • 2013-10-09
      • 2012-05-11
      相关资源
      最近更新 更多