gpt4 book ai didi

sas - 计算中使用的提示或宏变量

转载 作者:行者123 更新时间:2023-12-02 00:00:40 25 4
gpt4 key购买 nike

我使用 EG 中的提示管理器创建了一个数值变量。

此变量称为 HYr,表示我提取的数据最高年份。

运行程序时,我根据最高年份创建了 4 个新变量,这就是我遇到问题的地方。

我有以下内容:

%Let Yr2 = &HYr. - 1;

%Let Yr3 = "&HYr." - 2;

%Let Yr4 = &HYr. - 3;

%Let Yr5 = '&HYr.' - 4;

我试图从年份中减去该值,新变量将用于确定要提取的日期范围。我正在尝试一些事情并在这个过程中学习,但我仍然陷入困境。

我知道这可能只是一个简单的语法问题,如果有足够的时间,我可能能够解决它,但我办公室里没有人比我拥有更好的 SAS 技能,而且这并不多。

提前致谢。

最佳答案

使用%EVAL()对整数和宏变量进行计算。

%let HYR = 2018;
%Let Yr2 = %eval(&HYr. - 1);
%Let Yr5 = %eval(&HYr. - 4);

%put HYR: &hyr;
%put YR2: &yr2.;
%put YR5: &yr5.;

编辑:如果您尝试进行包含小数的其他计算,则需要使用%SYSEVALF

%let HYR = 2018;
%Let Yr2 = %sysevalf(&HYr. - 0.1);
%Let Yr5 = %sysevalf(&HYr. - 0.4);

%put HYR: &hyr;
%put YR2: &yr2.;
%put YR5: &yr5.;

关于sas - 计算中使用的提示或宏变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50065034/

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