楼主: 笑书神侠1
2115 3

[问答] SAS在有缺失变量的条件下,保持循环正常进行的问题 [推广有奖]

  • 0关注
  • 0粉丝

高中生

57%

还不是VIP/贵宾

-

威望
0
论坛币
29 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
935 点
帖子
23
精华
0
在线时间
21 小时
注册时间
2014-2-27
最后登录
2022-12-2

楼主
笑书神侠1 发表于 2014-4-11 16:28:01 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
在写宏的时候,写了一个数据导入循环如下:

%Macro importdata(SV,n);
%DO i=2 %TO &n;
proc import out=SV&i    datafile="E:\input\&&SV&i..xls"
dbms=excel  replace;
run;
%End;
%Mend;

%importdata(sv2 sv3 sv4 sv5 sv6,  5) /* 将E:\input\文件夹中SV2--SV6 5个xls文件导入work库*/

有时会因为缺少某一个文件,如SV3,导致宏运行出错退出,请问怎样才能增加一个循环控制语句,让循环在遇到找不到的文件时,例如缺少SV3,能自动跳过,继续进行下面的导入?希望大家帮帮忙,谢谢大家!
二维码

扫码加我 拉你入群

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

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

关键词:缺失变量 replace 希望大家帮帮忙 import Input replace import excel 文件夹

沙发
soporaeternus 发表于 2014-4-11 17:03:21
  1. filename infref "E:\input\&&SV&i..xls";
  2. %if %sysfunc(fexist(infref )) %then %do;
  3. proc import out=SV&i    datafile="E:\input\&&SV&i..xls"
  4. dbms=excel  replace;
  5. run;
  6. %end;
复制代码

已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
webgu + 20 + 20 + 1 + 1 + 1 回归了?

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

Let them be hard, but never unjust

藤椅
笑书神侠1 发表于 2014-4-13 19:02:57
soporaeternus 发表于 2014-4-11 17:03
多谢!

板凳
笑书神侠1 发表于 2014-4-14 21:19:30
soporaeternus 发表于 2014-4-11 17:03
您好!我用SAS写了个dos批处理文件,ren.bat, 用了很多方法调用,例如 X “&datapath\ren.bat” 或者 CALL SYSTEM( “&datapath\ren.bat” ) , 但始终无法运行, 不过在windows环境下双击是可以的。请问您有方法可以解决这个问题吗?谢谢您!

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

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