继续《SAS编程与数据挖掘商业案例》读书笔记,本次重点:输出控制
主要内容包括:log窗口输出控制、output窗口输出控制、ods输出控制
1.log窗口输出控制
将日志输出到外部文件
proc printto log= "f:\data_model\book_data\chapt9\newlog.txt"; new;
proc print data=sashelp.class;
proc printto;run;
2.output窗口输出控制
输出sas数据集到外部文件
filename routed ‘ f:\data_model\book_data\chapt9\sasdata.txt‘;
proc printto print=routed new;run;
proc printto;run;
输出output运行结果到外部文件
filename outp ‘ f:\data_model\book_data\chapt9\output.txt‘;
proc printto print= outp new;run;
proc freq data=sashelp.class;
tables sex;
run;
proc printto;run;
3.ods输出控制
ods的主要功能是控制sas的输出结果
1)ods
listing是默认的过程步输出管道,字符文本在output窗口显示,图形在graph1窗口显示
输出过程步结果到指定的外部文件
filename out ‘f:\data_model\book_data\chapt9\listing_1.txt‘;
ods listing file=out;
proc univariate data=sashelp.class;
var age;
run;
ods listing;
输出过程步的多个结果到外部文件
ods listing select basicmeasures quantiles;
filename out ‘f:\data_model\book_data\chapt9\listing_3.txt‘;
ods listing file=out;
proc univariate data=sashelp.class;
var age;
run;
ods listing;
输出多个过程的多个结果到外部文件
ods listing close;
filename out ‘f:\data_model\book_data\chapt9\listing_4.txt‘;
ods listing file=out;
proc univariate data=sashelp.class;
var age;
run;
proc freq data=sashelp.class;
table sex;
run;
ods listing;
2.ods results 是对过程步输出结果窗口进行控制,一般和output窗口内容一致;
使用方法:
Ods results on/off;
3.ods trace 功能是查询输出管道的对象
Ods trace on/off;
4.ods output 主要功能是把输出窗口output的输出对象转化成sas数据集,
Eg:拆分所有输出基本测度对象为不同的sas数据集
ods output basicmeasures(match_all = measure_dsn)=measure;
proc univariate data=sashelp.class;
class sex;
var weight height;
run;
ods output close;
%put &measure_dsn.;
注:总共会生成四个数据集,分别为measure,measure1,measure2,measure3,可以通过宏函数%put来查看
5.ods html
ods listing close;
ods results off;
ods html body="f:\data_model\book_data\chapt9\html1_unvariate.html";
proc univariate data=sashelp.class;
class sex;
var weight;
run;
ods html close;
ods results on;
ods listing;
输出绝对物理路径的一个html文件
6.ods csvall
ods listing close;
ods results off;
ods csvall
path=‘f:\data_model\book_data\chapt9‘
body =‘csv.csv‘
;
proc print data=sashelp.class;
run;
ods csvall close;
ods results on;
ods listing;
7.ods select
ods listing close;
ods results off;
ods html path=‘f:\data_model\book_data\chapt9‘ (url=none)
body="selection.html" (title=‘ods browser title‘)
contents=‘selection_toc.html‘ (title=‘ods contents‘)
frame=‘selection_frm.html‘(title=‘ods frame‘)
newfile=none ;
ods select
univariate.age.f.quantiles
univariate.weight.f.quantiles
;
ods show;
proc univariate data=sashelp.class;
class sex;
var age weight;
run;
ods select all;
ods html close;
ods results off;
ods listing;
8.ods exclude 是ods
select的反向操作