文件中不存在数据时SAS导入失败
我正在尝试导入一个文本文件,该文件的列名由制表符分隔,但文件中一天没有记录 下面是逻辑:文件中不存在数据时SAS导入失败,sas,Sas,我正在尝试导入一个文本文件,该文件的列名由制表符分隔,但文件中一天没有记录 下面是逻辑: proc import file="/saslocation/Current_Day_Records.txt" out=WORK.VENDOR_RECORDS_BY_DAY dbms='09'x replace ;run; NOTE: Unable to open parameter catalog: SASUSER.PARMS.PARMS.SLIST in update mode. Temporary
proc import file="/saslocation/Current_Day_Records.txt" out=WORK.VENDOR_RECORDS_BY_DAY
dbms='09'x replace
;run;
NOTE: Unable to open parameter catalog: SASUSER.PARMS.PARMS.SLIST in update mode. Temporary parameter values will be saved to
WORK.PARMS.PARMS.SLIST.
Unable to sample external file, no data in first 5 records.
ERROR: Import unsuccessful. See SAS Log for details.
日志:
proc import file="/saslocation/Current_Day_Records.txt" out=WORK.VENDOR_RECORDS_BY_DAY
dbms='09'x replace
;run;
NOTE: Unable to open parameter catalog: SASUSER.PARMS.PARMS.SLIST in update mode. Temporary parameter values will be saved to
WORK.PARMS.PARMS.SLIST.
Unable to sample external file, no data in first 5 records.
ERROR: Import unsuccessful. See SAS Log for details.
非常感谢您为解决此错误提供的任何帮助
文件中的头数据:
经销商id日期经销商Sr经销商批准报价批准费率经销商费用我认为您无法以这种方式导入,因为SAS搜索数据以设置列类型/格式。如果它没有要查看的数据,则无法将列设置为numeric/character 更好的方法是明确告诉SAS如何使用infle和input语句创建列:
filename textdata 'saslocation\Current_Day_Records.txt';
data VENDOR_RECORDS_BY_DAY ;
infile textdata delimiter='09'x MISSOVER DSD lrecl=32767 firstobs=2 ;
input
Dealer_id :8.
date :DATE9.
Dealer_Sr :$200.
Dealer_Quote :$200.
Approved_Quotes :$200.
Approval_Rate :8.
Dealer_Dues :8.
;
run;
我之所以这样写,是因为我假设您最终可能在该文本文件中有数据,并且需要以这种方式导入。。但实际上,如果您只需要一个只有标题信息的数据集的空白外壳,则根本不需要infle语句。如果这就是您所需要的,并且您有完整的列名称和属性列表,您可以使用proc sql或不使用infle语句的数据步骤轻松地进行设置
proc sql;
create table VENDOR_RECORDS_BY_DAY
(
Dealer_id num
, date num format=date9.
, Dealer_Sr char(200)
, Dealer_Quote char(200)
, Approved_Quotes char(200)
, Approval_Rate num
, Dealer_Dues num
);
quit;
编辑以添加:如果确实需要文本文件中的列名(可能有100个列名或变量列名),则可以使用
getnames=no执行proc import语句代码>和datarow=1添加代码>语句,然后按照类似的方法获取第一行数据并将其重置为列名:如果您已经知道列名,为什么需要这样做?非常感谢。它在两种情况下都非常有效。当有800条记录,文件为空时。@NagaVemprala太棒了!很乐意帮忙。