QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3690|回复: 0
打印 上一主题 下一主题

ODS trace与output的配合使用

[复制链接]
字体大小: 正常 放大
三省        

5

主题

13

听众

83

积分

升级  82.11%

  • TA的每日心情
    奋斗
    2014-7-14 09:44
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    自我介绍
    喜欢数学建模
    跳转到指定楼层
    1#
    发表于 2014-7-2 16:27 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    本帖最后由 三省 于 2014-7-2 16:53 编辑 1 X" S+ T3 B& p4 d0 s% |- ~/ p
    # I7 U: f1 Y7 a. j
         TRACE的功能室查询输出管道的对象。实际应用中,编程人员绝对不会刻意记住每一个过程步的所有输出对象名称,通过TRACE就可以很容易获取所需要的输出对象的名称。# X4 h, r7 a) s0 u0 K  @7 j
    9 u1 `* I: N% e0 \! T
       OUTPUT的主要功能是将OUTPUT窗口的输出对象转换成SAS数据集。比如,UNIVARIATE过程步可以产生很多输出对象,如果想要将其中的基本部分(如极值观测、分位数等),输出成为SAS数据集,就需要用到OUTPUT输出管道。
    ) o) e1 o; f% ~" Q) e) ^& A' E5 A% z; C& K! u) N/ S$ `7 ]
    1. ODS TRACE8 ^6 y' Q2 E# Y! z& J
    例如运行如下代码:
    . O' A( G  a* s2 |8 D* W
    + g, s( {2 J2 s% y3 F" ^ods trace on listing; /*listing:输出对象记录(即名称、标签等)到OUTPUT窗口*/$ r) f3 C* |9 ?# ^5 {: I: O8 n
    proc univariate data=sashelp.class;
    ( V- I! v0 i1 l- E; R4 L4 A var age;" U5 H! ^7 {. s) u
    run;
    : J; m, H) q( r2 {ods trace off;
    / R) [" q% M1 J/ l6 U出现如下结果:# I8 v; @; G" F8 {5 y
    7 g: B4 l- Y9 U8 O
    下面是univariate过程的所有输出对象,即有如下的五个估计部分:
    ) t. w# B: `5 C% N! n. ^$ b QQ截图20130702163311.png
    ; _' T+ `! v* v5 b! n. @
    9 A3 Y9 U7 O$ s, d4 C         QQ截图20130702162757.png 4 S3 t! w% }+ \- r

    + u5 ^( f0 K7 |( L$ L5 }, w
    8 H  O) j3 k, K$ `% d' R1 l其中红框部分的ExtremeObs(极值观测)、Quantiles(分位数)常常用于数值型变量的数据清洗工作。  
    5 W* |1 x; u, a  _: {% C
    . I9 U% \. X" r) W9 M( {1 r
    2 y% S9 z; m$ ^* x! R! Z2. ODS OUTPUT: y4 D) s0 {0 m" q8 F4 ~4 d

    " w2 z9 O$ V. o* c8 n4 E( s+ s! j假设研究人员关心的是基本测度、 ExtremeObs、Quantiles这三个部分的估计结果,那么就需要OUTPUT将基本测度、ExtremeObs与Quantiles三个对象输出为SAS数据集:& S5 a, L% t. q
    ! {- z* c6 e9 Z  ?0 A8 `
    ods listing close;
    8 g# U9 p% v/ b9 Q# n9 kods results off;) k5 o$ ~2 {( \5 \! J/ O
    ods output
    3 @$ B3 {# s- M/ O! F0 w basicmeasures=basic
    ( d( h4 U0 y! ?; c extremeobs=extremes
    7 X) G7 z. `* o+ b" s7 ^2 [ quantiles=quantiles% s. Z- c: _. W
    ;- F- W* X6 R, X  a+ h
    proc univariate data=sashelp.class;" Q! X2 L3 P+ F1 v& x) w4 r$ J
    class sex;: h3 B* O' F% ]6 e
    var weight height;
    4 ]& \6 ~  A" [/ |, jrun;( }  J3 u$ P! K* \) t  ^" ~
    ods output close;
    2 H" x/ g0 i( I3 qods results on;, ~- C" Q7 f9 S) K! w
    ods listing;
    5 T3 [8 Q% G- d; _( R  F6 p+ Z& J) d
    输出basic基本测量:1 ]# T/ ^7 B' P, d' P: n2 D
    proc print data=basic;run;
    6 c5 c' f2 J8 a  [7 ~ QQ截图20130702165111.png
    + o3 S* Z) M( z- K; p
    5 C2 K- o# [1 K* P输出extremes极值观测:' R, }& h1 t* f3 H2 H) Q
    proc print data=extremes;run;  _& l) ]; A9 c1 c7 c5 i- f+ i
    QQ截图20130702165128.png
    % s7 c, Q2 O3 _6 c2 Z3 x" |" {) D& U& f/ q
    输出分位数: T! a3 N, A/ i/ K/ G% k. g( }$ @
    proc print data=quantiles;run;
    4 i4 A, J! O* d) g5 ?' N# Y# l QQ截图20130702165226.png
      b/ G6 R0 k( {5 c( R- s  O) g
    - X% G9 F1 g. c8 ]
    " q& d& L8 |1 g7 t1 A! I9 T根据上面的单变量分析的结果,可以帮助我们进行数据清洗的工作。 ( a0 {/ l$ {0 q& ~$ x' j. Q
    * D7 x, i5 E! X8 Y4 G3 _$ X; g+ b: V

    . v( U% W' a; q" B' ?+ S# I( V) W" x7 C

    0 H0 }& C2 ?* O
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-8-17 07:50 , Processed in 0.361378 second(s), 52 queries .

    回顶部