一:SAS数据集转换成Excel
1.ACCESS 方法输出SAS数据集到Excel
options noxwait;
x “del f:data_modelbook_datachapt12mul_sas.xls”;
ods results off;
ods listing close;
libname test excel “f:data_modelbook_datachapt12mul_sas.xls” scan_text=no ;
data test.test1(dblabel=yes) test.test2;
set sashelp.class;
if _n_ le 5 then output test.test1;
else output test.test2;
label name=’姓名’;
label sex=’性别’;
run;
libname test clear;
程序完成多个SAS数据集输出到多个SHEET,通过libname语句的Excel 引擎实现。
Excel 其实是个数据库,每个sheet 是库里面的表。
缺陷:表的名字只能是英文。
ods results on;
ods listing;
2.通过Export过程
proc export data=sashelp.class
outfile=”C:UsersSONYDesktophuzi.xls”
dbms=excel replace ;
sheet=”赛虎博客”;
run;
缺陷:输出的只能是变量名,而不能输出变量的标签。
3.输出PROC步的结果到外部Excel文件
Ods Results Off;
Ods Listing Close;
Ods Html File=”C:UsersSONYDesktopODS.Xls”;
Proc Tabulate Data=Sashelp.Class ;
Class Sex Name;
Var Age;
Table Sex,Age*Sum=””;
Table Name,Age*Sum=””;
Run;
Ods Html Close;
Ods Results On;
Ods Listing;
HTML输出的文件一般较大,最好是对汇总的数据来处理。
如果将输出结果的数据输出到SAS数据集,程序如下
Ods Listing Close;
Ods Results Off;
Ods Output
Table#1=Tb1
Table#2=Tb2;
Proc Tabulate Data=Sashelp.Class ;
Class Sex Name;
Var Age;
Table Sex,Age*Sum=””;
Table Name,Age*Sum=””;
Run;
Ods Output Close;
Ods Results On;
Ods Listing;
说明:ODS OUTPUT 语法如下:
ods output
对象名称1=sas数据集1
对象名称2=sas数据集2
… ;
对像名称可以是表的名称,也可以是表的说明,也可以是表的路径。如果是表的说明需要加”#”号。
可以通过ods trace 来获取,如下:
ods trace on;
Proc Tabulate Data=Sashelp.Class ;
Class Sex Name;
Var Age;
Table Sex,Age*Sum=””;
Table Name,Age*Sum=””;
Run;
ods trace off;
在日志中查看:
Output Added:
————-
名称: Table
标签: Table 1
数据名称: Report
路径: Tabulate.Report.Table
————-
Output Added:
————-
名称: Table
标签: Table 2
数据名称: Report
路径: Tabulate.Report.Table
————-
二.将原始数据转换成SAS数据集
1.通过import
proc import out= data
datafile=”C:UsersSONYDesktoplib_excel.xls”
dbms=excel2000 replace ;
getnames=yes;
run;
转载请注明:数据分析 » SAS EXCEL转换_sas导入excel_sas如何导入excel数据_sas培训