gpt4 book ai didi

date - SAS:以 YY 格式获取当前年份

转载 作者:行者123 更新时间:2023-12-01 05:12:43 24 4
gpt4 key购买 nike

我想将 YY 格式的当前年份分配给宏或数据集变量。

我可以使用自动宏变量 &sysdate&sysdate9 来获取当前日期。然而,以 YY 格式提取年份被证明是一场噩梦。以下是我一直在尝试的一些示例。

存在 YEARw.格式。但是当我尝试使用它时,我会得到错误或奇怪的结果。例如,运行

data _null_;
yy = year(input("&sysdate9.", year2.));
put yy=;
run;

产生错误

ERROR 48-59: The informat YEAR was not found or could not be loaded.

如果我尝试格式化输出中的变量,我得到的是 1965 而不是当前年份。以下

data _null_;
yy = year(input("&sysdate9.", date9.));
put yy= yy year2.;
run;

输出

yy=2016 65

请帮忙。

最佳答案

这可以让您获得当前年份的 2 位数年份:

DATA _NULL_;

YEAR = PUT(TODAY(),YEAR2.);
PUT YEAR;

RUN;
/* Returns: 16 */

分解我在这里做的事情:

我使用 TODAY() 获取当前日期作为 DATE 类型。 &SASDATE 需要转换为 DATE,但它也是 SAS session 开始的日期。 TODAY() 是当前日期。

PUT 允许我们传入一个非字符(数字/日期)值,这就是为什么它与 TODAY() 一起使用而不是 输入

关于date - SAS:以 YY 格式获取当前年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40365372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com