请选择 进入手机版 | 继续访问电脑版
楼主: stayhungry05
1645 2

请教一个宏变量赋值的问题 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

22%

还不是VIP/贵宾

-

威望
0
论坛币
515 个
通用积分
1.8400
学术水平
6 点
热心指数
13 点
信用等级
11 点
经验
1881 点
帖子
82
精华
0
在线时间
85 小时
注册时间
2014-10-8
最后登录
2018-8-3

stayhungry05 发表于 2016-1-17 13:58:55 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
data _null_;

%let a = 456789;
put "&a";

b=cats("&a", "abc");
put b;

call symputx('a', b);
put "&a";

run;

结果是:
456789
456789abc
456789

请问,为什么最后的a 的值和b不相等?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:宏变量赋值 symput Data null call null

call symputx生成的宏变量&a在当前data step不可调用。

你可以在data步外加上:%put &a;
已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
stayhungry05 + 1 + 1 + 1 + 1 精彩帖子
木叶知秋 + 1 + 1 + 1 精彩帖子

总评分: 论坛币 + 1  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

使用道具

stayhungry05 发表于 2016-1-17 22:18:00 |显示全部楼层 |坛友微信交流群
孤单的我们 发表于 2016-1-17 15:21
call symputx生成的宏变量&a在当前data step不可调用。

你可以在data步外加上:%put &a;
多谢。

又查了下资料,如果需要在当前DATA步内使用symputx定义的宏变量,用symget函数可以做到

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 19:20