SAS从数据集读取然后写入Excel

时间:2017-09-19 07:16:17

标签: sas

下面是从数据集读取一些数据的sas代码,然后将数据写入excel文件,但是,存在一些问题。

LIBNAME mck_pred "N:\Data-Dump\test\training" compress=yes;

proc sql;
create table temp as 
select cust_id, number from mck_pred.pred_data;
quit;

proc export data=temp output="C:\Users\test.xlsx" dbms=XLSX replace;
run;

错误显示:

OTE: The SAS System stopped processing this step because of errors.
2463  proc export  data=temp output="C:\Users\test.xlsx" dbms=XLSX replace;
                                      ------
                                      22
                                      76
ERROR 22-322: Syntax error, expecting one of the following: ;, (, DATA, DBLABEL, DBMS, DEBUG, FILE,
              LABEL, OUTFILE, OUTTABLE, REPLACE, TABLE, _DEBUG_.

ERROR 76-322: Syntax error, statement will be ignored.

2464  run;

关于如图所示的代码,我有三个问题:

  1. compress=yes是什么意思?
  2. 如何更改程序以使其成功运行?
  3. 我们应该何时在程序中使用quitrun
  4. 感谢。

1 个答案:

答案 0 :(得分:2)

1)compress=yes表示您在库mck_pred中创建的新数据集将压缩其观察结果。在这个特定的例子中,它没有任何影响。

3)长话短说,quitproc sql一起使用,rundata步骤和所有其他SAS程序一起使用。

2)输出路径的语法是outfile=,而不是output=。您还应在dbms=xlsx声明中提及proc export