楼主: edwardzxf
3262 6

sas 参数个数不定的宏 [推广有奖]

  • 0关注
  • 2粉丝

已卖:32份资源

讲师

26%

还不是VIP/贵宾

-

威望
0
论坛币
222 个
通用积分
0.4203
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
3991 点
帖子
242
精华
0
在线时间
375 小时
注册时间
2010-7-30
最后登录
2021-5-25

楼主
edwardzxf 学生认证  发表于 2011-12-30 22:03:18 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请问如何定义一个参数个数不确定的宏。如%macro Test(c1=, c2=,....); 调用的时候可以为:%Test(c1=a,c2=b); 或者%Test(c1=a,c2=b,c3=c); 甚至是%Test(c1=a,c2=b,c3=c,.....); 这样个数任意,有多少个就被识别多少个. 谢谢..

二维码

扫码加我 拉你入群

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

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

关键词:Macro test Est Mac acr 如何

沙发
popobobo 发表于 2011-12-31 10:02:41
已有 1 人评分学术水平 热心指数 收起 理由
275769263 + 1 + 1 good....

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

藤椅
bobguy 发表于 2012-1-8 03:16:55
You can define more parameters(say 10) in a macro definition and call it with less parameters(say 5).

It is better in practice to define some default values and proper handling rules when some of parameters are missing in the macro call.

板凳
edwardzxf 学生认证  发表于 2012-1-9 21:33:01
bobguy 发表于 2012-1-8 03:16
You can define more parameters(say 10) in a macro definition and call it with less parameters(say 5) ...
Thanks a lot..

报纸
webgu 发表于 2012-1-10 22:01:23
可以试试 parabuff option. 一个例子。
  1. %macro mosales / parmbuff;
  2.   %let listindex=1;
  3.   %do %until (%scan(&syspbuff,&listindex) eq );
  4.     %let repmonth=%scan(&syspbuff,&listindex);
  5.     proc means data=books.ytdsales n sum;
  6.       %if &repmonth ne %then %do;
  7.         title "Sales during month &repmonth";
  8.         where month(datesold)=&repmonth;
  9.       %end;
  10.       %else %do;
  11.         title "Overall Sales";
  12.       %end;
  13.       class section;
  14.       var saleprice;
  15.     run;
  16.     %let listindex=%eval(&listindex+1);
  17.   %end;
  18. %mend;

  19. %mosales(3 5 10) ;
  20. %mosales();
复制代码
SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

地板
edwardzxf 学生认证  发表于 2012-1-12 00:36:54
webgu 发表于 2012-1-10 22:01
可以试试 parabuff option. 一个例子。
谢谢指教。。

7
mijiuyuanzi 发表于 2016-2-12 14:41:02
webgu 发表于 2012-1-10 22:01
可以试试 parabuff option. 一个例子。
请问一下(%scan(&syspbuff,&listindex) eq 这个迭代条件该如何理解呢

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-29 08:52