楼主: lemonxinran
1044 3

[问答] 宏参数引用出错 [推广有奖]

  • 0关注
  • 1粉丝

讲师

29%

还不是VIP/贵宾

-

威望
0
论坛币
1158 个
通用积分
6.1500
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
10334 点
帖子
188
精华
0
在线时间
603 小时
注册时间
2010-10-25
最后登录
2024-8-22

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教:初学sas,以下是我写的程序:
%macro a(fyear,seller_industry);
data b;
set tran_info;
if &fyear;
if &seller_industry;
%mend a;
%a("2000",C03);
run;

我是想将tran_info根据fyear和seller_industry值的不同放在表b里面,%a("2000","C03");是想将fyear为2000年,seller_industry为C03的提出来,但程序运行后, 提示:NOTE: Character values have been converted to numeric values at the places given by:      (Line):(Column).
      1:2
NOTE: Variable C03 is uninitialized.
NOTE: There were 758 observations read from the data set WORK.TRAN_INFO.
NOTE: The data set WORK.B has 0 observations and 25 variables.
这到底是错哪里了?谢谢解惑!


二维码

扫码加我 拉你入群

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

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

关键词:参数引用 observations observation Variables Character values 程序

沙发
ttklkl 发表于 2013-1-3 15:31:13 |只看作者 |坛友微信交流群
假如你想将sashelp 中的class数据集中sex位F 和age为14 的人输出:
data tran_info;
  set sashelp.class;
run;

%macro a(fyear, seller_industry);
data b;
set tran_info;
if Sex=&fyear and Age=&seller_industry;
run;
%mend a;

%a("F", 14);
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
davil2000 + 1 + 1 + 1 热心帮助其他会员

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

Stay Hungry. Stay Foolish.

使用道具

藤椅
pobel 在职认证  发表于 2013-1-3 17:34:21 |只看作者 |坛友微信交流群
楼主的意思是不是这样:

%a(%str(fyear="2000"),%str(seller_industry="C03"));
run;

建议楼主比较一下Positional和Keyword 两种宏参数的区别
和谐拯救危机

使用道具

板凳
lemonxinran 发表于 2013-1-3 20:36:10 |只看作者 |坛友微信交流群
pobel 发表于 2013-1-3 17:34
楼主的意思是不是这样:

%a(%str(fyear="2000"),%str(seller_industry="C03"));
谢谢。我这样写:
%macro a(fyear,seller_industry);
data b;
set tran_info;
if fyear=&fyear;
if seller_industry=&seller_industry;
%mend a;
%a("2000","C03")
run;
得出了正确的结果,将2000年industry为C03的记录提取出来了。

使用道具

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

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

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

GMT+8, 2024-9-20 01:40