数学建模社区-数学中国

标题: ODS trace与output的配合使用 [打印本页]

作者: 三省    时间: 2014-7-2 16:27
标题: ODS trace与output的配合使用
本帖最后由 三省 于 2014-7-2 16:53 编辑
" y4 [" @' T9 m0 {0 O9 Y& W9 [  X: j/ s" o& w
     TRACE的功能室查询输出管道的对象。实际应用中,编程人员绝对不会刻意记住每一个过程步的所有输出对象名称,通过TRACE就可以很容易获取所需要的输出对象的名称。
( d  N3 v2 V' t& t) H7 s6 ^9 u9 f  b, ^( L7 Q8 A- ?
   OUTPUT的主要功能是将OUTPUT窗口的输出对象转换成SAS数据集。比如,UNIVARIATE过程步可以产生很多输出对象,如果想要将其中的基本部分(如极值观测、分位数等),输出成为SAS数据集,就需要用到OUTPUT输出管道。
+ ^' I( z9 _; P4 l0 E
0 I: Y. [  j3 P3 H" E) d. j1. ODS TRACE
3 O- Q$ ^' O  s. L( U4 W3 L4 q例如运行如下代码:
* j# x; b  K& k& z3 B - j* R% B! N2 E2 N/ C
ods trace on listing; /*listing:输出对象记录(即名称、标签等)到OUTPUT窗口*/' x5 Q* c  d" z0 s) D6 D* H7 H* {# J/ @
proc univariate data=sashelp.class;
/ d" J2 x% u! h) ^7 }5 [3 p var age;* a& Q+ B9 y+ a
run;
, s# d& z' s3 L- u& j: jods trace off;
1 b. ^) r% m$ z出现如下结果:4 z% P, E0 s8 E# W8 \+ l
& @3 M% M3 N# o. b; F) r
下面是univariate过程的所有输出对象,即有如下的五个估计部分:. H3 }/ \: w  U4 U* r
QQ截图20130702163311.png " g) h( {% _" P, w2 [3 b

6 m9 R) Z  x3 J         QQ截图20130702162757.png 1 |% A% _6 _$ }3 k) E0 L$ x

/ j& y2 W! I0 ]' ~% N% R3 D  D" d3 N6 \6 q1 n3 B1 N' M' L
其中红框部分的ExtremeObs(极值观测)、Quantiles(分位数)常常用于数值型变量的数据清洗工作。  
, G( n; F2 x4 O3 N' B& u
& a" R3 h) A% q* O7 D. r1 p* Y( g; c- K# J
2. ODS OUTPUT
  o- w3 G: Q) J0 W2 r
' z0 q  i7 e$ |6 r9 [假设研究人员关心的是基本测度、 ExtremeObs、Quantiles这三个部分的估计结果,那么就需要OUTPUT将基本测度、ExtremeObs与Quantiles三个对象输出为SAS数据集:
$ Z$ q; r$ N- W* F- Y
' }& x% f4 B0 `9 C+ L% q6 rods listing close;
, S. w0 ]" {9 M9 ^- y4 lods results off;( c% M) A; D$ w/ X, p% j/ j# g
ods output   ?, V2 k; P, b1 Q  K9 P
basicmeasures=basic
6 {! H- Y% ?3 V- d extremeobs=extremes
0 Y! v. w5 ?5 U4 r( S! q quantiles=quantiles
: U; U9 s' d1 z8 |;
  R2 Z- T/ E! \; `- yproc univariate data=sashelp.class;
/ n( P; k+ O0 `- _ class sex;
% |$ I7 Y  r. p4 c6 T# w var weight height;8 O2 Y2 U9 W+ }3 ?
run;% s& p  t3 ]! v% Q* `7 P! w
ods output close;
6 {- P, c- i( i" A- |ods results on;
4 v! s+ _1 l) @ods listing;  I; w7 E3 a' t  _( Y  w

; z7 f: c' ?" {: `) H& W输出basic基本测量:, w# E3 W  e# P% q
proc print data=basic;run;
5 r. n* S6 m+ ]" I QQ截图20130702165111.png * S( h1 U; B' M* A, y8 D

2 {8 j0 G6 H' e4 |, b# N9 A" [  U, h% Y输出extremes极值观测:
8 F! m$ G) A; C0 tproc print data=extremes;run;
. b% A6 ^1 }. b6 h+ f% q* H QQ截图20130702165128.png
. ^+ L& |0 C; |* x
1 n3 m" ^8 R& @+ a% t输出分位数
" x. S. [' q( w( {) f0 Zproc print data=quantiles;run;7 ?) {$ K! n& @
QQ截图20130702165226.png # ?' k6 O% W5 L& f6 Q3 N" [" k
6 N' ^2 \' q# U1 f* |% E

, T$ k. V* j. F' l根据上面的单变量分析的结果,可以帮助我们进行数据清洗的工作。 : H; @$ ^3 W9 l- z
1 }$ V# ~* L7 O9 n
! a- x0 o% j0 O  E/ m  k

: O1 o) K. J5 j0 P5 M* h3 ?7 r/ S8 v# o





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5