SAS - 使用excel文件导入proc,dbms无效

时间:2018-03-26 12:31:51

标签: excel sas

我有一个.xls excel文件(Microsoft Excel 97-2003工作表),我想将其导入SAS。所以我用过:

proc import datafile = "C:\Users\***\***\data.xls" 
        out = data dbms = EXCEL;
run;

但是我收到以下错误:

  

错误:DBMS类型EXCEL对导入无效。

我尝试过不同的DBMS(在很多情况下我没有真正区别,但只是猜测了EXCEL97,EXCEL4,EXCEL5,XLS)。这些都没有奏效。你知道如何处理它吗?

少数第一列如下所示:

id      status      start       end         duration   browser    browserversion   country              Age
51      complete    03/08/2016  03/08/2016  0:21:57    Chrome     65.0             1                    51
133     complete    03/08/2016  03/08/2016  0:10:07    Chrome     58.0             1                    18
1002    complete    03/08/2016  03/08/2016  0:17:57    Chrome     58.0             1                    40

2 个答案:

答案 0 :(得分:3)

您需要拥有许可证。运行PROC SETINIT,看看您是否已获得此产品的许可。

---SAS/ACCESS Interface to PC Files

如果没有,则将excel文件保存为CSV文件,并使用数据步骤读取它。这真的很容易。

data myfile ;
  infile "C:\Users\***\***\myfile.csv" dsd firstobs=2 truncover ;
  length varfirst 8 var2 $30 .... varlast $5 ;
  input varfirst -- varlast ;
run;

为需要它们的任何变量添加INFORMAT和FORMAT语句,例如日期。正常字符或数字变量不需要INFORMAT或FORMAT for SAS就能正确读取或显示它们。

答案 1 :(得分:1)

请尝试使用Dbms = xlsx或dbms = xls。适用于较旧的Microsoft Office xls引擎。