楼主: sl122113
4806 3

SAS宏%if语句中进行两宏变量的关系运算出错 [推广有奖]

  • 0关注
  • 2粉丝

已卖:117份资源

博士生

35%

还不是VIP/贵宾

-

威望
0
论坛币
81 个
通用积分
6.2100
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
27246 点
帖子
179
精华
0
在线时间
349 小时
注册时间
2009-9-16
最后登录
2024-6-11

楼主
sl122113 发表于 2016-11-25 23:40:06 |AI写论文
20论坛币
  1. %macro revalue(varcon, value, var);
  2. data _total_;
  3. set _total_;
  4. %if "&varcon" = "&value"  and   "&var"=“2” %then "&var."="1";
  5. %else %if "&varcon" = "&value"  and  "&var" = %str() %then "&var."="0";
  6. run;
  7. %mend;
复制代码

我想在if语句中加用两个判断条件来对&var进行重新赋值。但运行提示解析失败。

MLOGIC(REVALUE):  %IF 条件 "&varcon" = "&value"  and  "&var" =  为 FALSE

请高手帮忙解决下!多谢!

最佳答案

dogmamongo 查看完整内容

%if 这些语法 真针对 程式语句下的条件 严格来说 你的写完以后 没有任何执行程式语句的空间 if then 才是data step中的语句
关键词:SAS宏 Revalue value Total Macro
Let Our Life Be Magic And Open

沙发
dogmamongo 发表于 2016-11-25 23:40:07
%if 这些语法 真针对 程式语句下的条件
严格来说 你的写完以后   没有任何执行程式语句的空间

if then  才是data step中的语句

藤椅
sl122113 发表于 2016-11-26 14:56:16
dogmamongo 发表于 2016-11-26 11:31
%if 这些语法 真针对 程式语句下的条件
严格来说 你的写完以后   没有任何执行程式语句的空间
那我想整个宏出来,还有其他方法么?

板凳
sl122113 发表于 2016-11-26 15:03:12
dogmamongo 发表于 2016-11-26 11:31
%if 这些语法 真针对 程式语句下的条件
严格来说 你的写完以后   没有任何执行程式语句的空间
我理解了,多谢!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 07:50