楼主: sunset1986
2228 6

麻烦大家帮忙解决一个自动读取数据的程序设置 (已经解决,多谢大家) [推广有奖]

  • 4关注
  • 23粉丝

已卖:100份资源

院士

16%

还不是VIP/贵宾

-

威望
1
论坛币
1505 个
通用积分
0.1258
学术水平
42 点
热心指数
49 点
信用等级
23 点
经验
31956 点
帖子
2535
精华
0
在线时间
715 小时
注册时间
2012-2-6
最后登录
2014-5-26

楼主
sunset1986 发表于 2012-4-24 17:32:24 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
问题已经解决了,请大家参考以下这个程序:
%if %sysfunc(fileexist(&myfilerf)) %then    %let fid=%sysfunc(fopen(&myfilerf));%else   %put The external file &myfilerf does not exist.;
我把%if %sysfunc(fileexist("C:\Projects\SAS\xxx.xls")) %then %do;放在判别条件中,然后就可以解决这个问题了,多谢大家关照以及帮助,期待多交流


又来麻烦大家了,这次呢,我使用宏变量读入一些excel数据,程序如下:

%let from=20120406;
%let to=20120409;
%macro citation(from,to);

data summary;
run;
%do i=&from. %to &to.;
(确保读入一个月的程序)
  %if %sysfunc(mod(&i,100))>0 and %sysfunc(mod(&i,100))<=31 %then %do;
   %Collection(&i)
  
%end;
%end;
%mend citation;
%macro Collection(a);

%macro Collection(a);
PROC IMPORT OUT= Financial_&a.
            DATAFILE= "C:\Projects\ad hoc analysis\Portfolio related\Katrina_data_collection\&a._Financial"
            DBMS=EXCEL REPLACE;
     RANGE="Financial_Report$";
     GETNAMES=YES;
     MIXED=YES;
     SCANTEXT=YES;
     USEDATE=YES;
     SCANTIME=YES;
RUN;

data summary;
set summary
   Financial_&a.;
run;


%mend Collection;
%citation(&from, &to);

我的问题是,在一个月中,比如说四月,有很多个周末或者假期,这些日子都是没有数据可以读入的,如何可以让程序自动监测到没有数据,然后避免读入这个数据呢?多谢咯
也就是说,如何利用数据是否存在做一个逻辑判别,恩,感激不尽

二维码

扫码加我 拉你入群

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

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

关键词:读取数据 已经解决 Projects External sysfunc 数据 程序

An honest tale speeds best being plainly told.
Cheers!

沙发
chendonghui1987 发表于 2012-4-24 19:07:09
那就需要一个维护表了,因为周六日好说,但是周六日也会有上班的时候的,会进行调休,所以需要一个维护表去维护哪些日子会休假,没有数据

藤椅
sunset1986 发表于 2012-4-24 21:50:11
chendonghui1987 发表于 2012-4-24 19:07
那就需要一个维护表了,因为周六日好说,但是周六日也会有上班的时候的,会进行调休,所以需要一个维护表去维护 ...
也就是说,我需要把这些没有数据的日子做成空的表格,然后按照正常数据进行读入便可是么?
An honest tale speeds best being plainly told.
Cheers!

板凳
chendonghui1987 发表于 2012-4-24 23:45:56
用一张表去记录哪些是休息日或者放假,这些日期是没有数据的日期,然后在宏里面写些控制代码,遇到这样的日期就跳过就行了.

报纸
sunset1986 发表于 2012-4-25 09:08:28
感谢大家的帮助,这种方法呢是我以前使用的
我还想向大家咨询一下,在sas中,有没有根据读入数据是否存在进行逻辑判别然后决定宏是否运行的方法呢?(最好是一个statement),再次感谢大家的时间~
An honest tale speeds best being plainly told.
Cheers!

地板
sunset1986 发表于 2012-4-25 10:22:44
刚才研究了一下,利用一个%sysfunc(fileexist(C:\*****\xxx.xls))这个功能解决了,非常感谢大家的帮助以及关照
An honest tale speeds best being plainly told.
Cheers!

7
sunset1986 发表于 2012-4-26 15:52:57
欢迎交流~
An honest tale speeds best being plainly told.
Cheers!

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

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