全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2392 3
2015-08-19
Log显示的结果如下:

4497  %macro createdummy;
4498
4499  data DUMMY_DATASET;
4500  set dummy_header(OBS=MAX);
4501  %do i=1 %to %wordcount(&flist);
4502
4503      %do j=1 %to %scan(&VARS_FMT,&i,' ');
4504
4505           %scan(&flist,&i,' ')=&j;
4506           FLAG_DUMMY=1;
4507           OUTPUT ;
4508      %end;
4509  %end;
4510  RUN;
4511  %mend;
4512
4513  %CREATEDUMMY;

报错如下:
ERROR: %EVAL function has no expression to evaluate, or %IF statement has no condition.
ERROR: The %TO value of the %DO J loop is invalid.
ERROR: The macro CREATEDUMMYVARS will stop executing.

flist 里面包含的是变量名 age gender... 共有17个
VARS_FMT里面是各个变量名下的可选输入的种类,如gender 下只有两个,这个数就是2,这个变量里面是各个变量对应的可选的输入的种类表,如 100 2 .....

这个程序的目的是输入各个变量的组合,针对报错的问题,想问问大家觉得怎样才能解决。

谢谢





二维码

扫码加我 拉你入群

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

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

全部回复
2015-8-19 22:40:15
brushington 发表于 2015-8-19 21:21
Log显示的结果如下:

4497  %macro createdummy;
第一个错说的是if语句有问题啊
二维码

扫码加我 拉你入群

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

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

2015-8-19 23:08:57
brushington 发表于 2015-8-19 21:21
Log显示的结果如下:

4497  %macro createdummy;
wordcount是你自定义的函数吧
二维码

扫码加我 拉你入群

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

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

2015-8-20 14:30:24
1. 数出一个宏变量中有多少个单词这样就行:%sysfunc(countw(&var.))
2. %scan(&VARS_FMT,&i,' ');写错了,应为:%scan(&VARS_FMT,&i,%str( ));
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群