SAS中文论坛

标题: SAS MACRO SUMMARIZING VARIABLE INFORMATION [打印本页]

作者: shiyiming    时间: 2010-10-22 13:24
标题: SAS MACRO SUMMARIZING VARIABLE INFORMATION
From Wensui Liu's blog

<font size="2"><span style="background-color&#58;#ffffff"><font color="#0000ff">%macro</font></span> summ(<span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> = );<br /><span style="background-color&#58;#ffffff"><font color="#008000">****************************************************;</font></span><br /><span style="background-color&#58;#ffffff"><font color="#008000">* THIS MACRO IS TO SUMMARIZE VARIABLES INFORMATION *;</font></span><br /><span style="background-color&#58;#ffffff"><font color="#008000">* IN A SAS DATA SET                                *;</font></span><br /><span style="background-color&#58;#ffffff"><font color="#008000">****************************************************;</font></span><br />    <br /><span style="background-color&#58;#ffffff"><font color="#0000ff">options</font></span> mprint mlogic orientation = landscape nodate nocenter nonumber;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>proc contents</b></font></span> <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> = <font color="#0000ff"><b>&amp;data</b></font> <span style="background-color&#58;#ffffff"><font color="#0000ff">varnum</font></span> out = _meta noprint;<br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> _nmeta (<span style="background-color&#58;#ffffff"><font color="#0000ff">rename</font></span> = (index1 = i))<br />     _cmeta (<span style="background-color&#58;#ffffff"><font color="#0000ff">rename</font></span> = (index2 = i));<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">set</font></span> _last_ <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span> = eof;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">if</font></span> type = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">do</font></span>;<br />    index1 + <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">output</font></span> _nmeta;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">else</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">if</font></span> type = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>2</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">do</font></span>;<br />    index2 + <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">output</font></span> _cmeta;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>proc sql</b></font></span> noprint;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">max</font></span>(i) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;num_cnt <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> _nmeta;<br />  <br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">max</font></span>(i) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;cha_cnt <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> _cmeta;<br /><br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> count(*) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;cnt <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> <font color="#0000ff"><b>&amp;data</b></font>;<br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>quit</b></font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%local</font></span> num_cnt cha_cnt cnt;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span> num_i = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%to</font></span> <font color="#0000ff"><b>&amp;num_cnt</b></font>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>  proc sql</b></font></span> noprint;<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> strip(<span style="background-color&#58;#ffffff"><font color="#0000ff">upcase</font></span>(name)) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;nx <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> _nmeta <span style="background-color&#58;#ffffff"><font color="#0000ff">where</font></span> i = <font color="#0000ff"><b>&amp;num_i</b></font>;<br /><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">n</font></span>(<span style="background-color&#58;#ffffff"><font color="#0000ff">distinct</font></span> <font color="#0000ff"><b>&amp;nx</b></font>) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;dist <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> <font color="#0000ff"><b>&amp;data</b></font>;<br />  <span style="background-color&#58;#ffffff"><font color="#000080"><b>quit</b></font></span>;<br /><br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%local</font></span> nx dist;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>  proc summary</b></font></span> <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> = <font color="#0000ff"><b>&amp;data</b></font> nway;<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">output</font></span> out = _data_ (<span style="background-color&#58;#ffffff"><font color="#0000ff">drop</font></span> = _freq_ _type_)<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">n</font></span>(<font color="#0000ff"><b>&amp;nx</b></font>) = cnt <span style="background-color&#58;#ffffff"><font color="#0000ff">nmiss</font></span>(<font color="#0000ff"><b>&amp;nx</b></font>) = mis<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">min</font></span>(<font color="#0000ff"><b>&amp;nx</b></font>) = xmin p25(<font color="#0000ff"><b>&amp;nx</b></font>) = xp25 median(<font color="#0000ff"><b>&amp;nx</b></font>) = xmdn<br />    p75(<font color="#0000ff"><b>&amp;nx</b></font>) = xp75 <span style="background-color&#58;#ffffff"><font color="#0000ff">max</font></span>(<font color="#0000ff"><b>&amp;nx</b></font>) = xmax <span style="background-color&#58;#ffffff"><font color="#0000ff">mean</font></span>(<font color="#0000ff"><b>&amp;nx</b></font>) = xavg;<br />  <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br /><br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%if</font></span> <font color="#0000ff"><b>&amp;num_i</b></font> = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> _nsumm;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">length</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> $<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>32</b></font></span>;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">set</font></span> _last_;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;nx&quot;</font></span>;<br />      val_pct = cnt / <font color="#0000ff"><b>&amp;cnt</b></font>;<br />      mis_pct = mis / <font color="#0000ff"><b>&amp;cnt</b></font>;<br />      dis = <font color="#0000ff"><b>&amp;dist</b></font>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%else</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> _nsumm;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">set</font></span> _nsumm _last_ (<span style="background-color&#58;#ffffff"><font color="#0000ff">in</font></span> = new);<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">if</font></span> new <span style="background-color&#58;#ffffff"><font color="#0000ff">then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">do</font></span>;<br />        <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;nx&quot;</font></span>;<br />        val_pct = cnt / <font color="#0000ff"><b>&amp;cnt</b></font>;<br />        mis_pct = mis / <font color="#0000ff"><b>&amp;cnt</b></font>;        <br />        dis = <font color="#0000ff"><b>&amp;dist</b></font>;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span>;   <br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;    <br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span> cha_i = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%to</font></span> <font color="#0000ff"><b>&amp;cha_cnt</b></font>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>  proc sql</b></font></span> noprint;<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> strip(<span style="background-color&#58;#ffffff"><font color="#0000ff">upcase</font></span>(name)) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;cx <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> _cmeta <span style="background-color&#58;#ffffff"><font color="#0000ff">where</font></span> i = <font color="#0000ff"><b>&amp;cha_i</b></font>;<br />  <br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">create</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">table</font></span><br />      _level1 <span style="background-color&#58;#ffffff"><font color="#0000ff">as</font></span><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span><br />      <font color="#0000ff"><b>&amp;cx</b></font>               <span style="background-color&#58;#ffffff"><font color="#0000ff">as</font></span> level,<br />      count(*) / <font color="#0000ff"><b>&amp;cnt</b></font>.  <span style="background-color&#58;#ffffff"><font color="#0000ff">as</font></span> pct<br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span><br />      <font color="#0000ff"><b>&amp;data</b></font> <br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">group</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">by</font></span><br />      <font color="#0000ff"><b>&amp;cx</b></font><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">order</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">by</font></span><br />      pct descending;<br /><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span> count(*) <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span> &#58;level <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span> _level1;<br /><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">select</font></span><br />      case when <span style="background-color&#58;#ffffff"><font color="#0000ff">compress</font></span>(level, <span style="background-color&#58;#ffffff"><font color="#a020f0">' '</font></span>) = <span style="background-color&#58;#ffffff"><font color="#a020f0">''</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">then</font></span> <span style="background-color&#58;#ffffff"><font color="#a020f0">'_'</font></span><br />           <span style="background-color&#58;#ffffff"><font color="#0000ff">else</font></span> strip(level) <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span> ||<span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;(&quot;</font></span>||strip(<span style="background-color&#58;#ffffff"><font color="#0000ff">put</font></span>(pct, percent5.<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>0</b></font></span>))||<span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;)&quot;</font></span><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">into</font></span><br />      &#58;tops separated <span style="background-color&#58;#ffffff"><font color="#0000ff">by</font></span> <span style="background-color&#58;#ffffff"><font color="#a020f0">', '</font></span><br />    <span style="background-color&#58;#ffffff"><font color="#0000ff">from</font></span><br />      _level1(obs = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>5</b></font></span>);<br />  <span style="background-color&#58;#ffffff"><font color="#000080"><b>quit</b></font></span>;<br /><br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%local</font></span> cx tops;<br /><br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%if</font></span> <font color="#0000ff"><b>&amp;cha_i</b></font> = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> _csumm;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">length</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> $<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>32</b></font></span> tops $<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>100</b></font></span>;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;cx&quot;</font></span>;<br />      level = <font color="#0000ff"><b>&amp;level</b></font>;<br />      tops = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;tops&quot;</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%else</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> _csumm;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">set</font></span> _csumm <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span> = eof;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">output</font></span>;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">if</font></span> eof <span style="background-color&#58;#ffffff"><font color="#0000ff">then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">do</font></span>; <br />        <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;cx&quot;</font></span>;<br />        level = <font color="#0000ff"><b>&amp;level</b></font>;<br />        tops = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;&amp;tops&quot;</font></span>;<br />        <span style="background-color&#58;#ffffff"><font color="#0000ff">output</font></span>;<br />      <span style="background-color&#58;#ffffff"><font color="#0000ff">end</font></span>;<br />    <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;      <br />  <span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">title</font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%if</font></span> <font color="#0000ff"><b>&amp;num_cnt</b></font> &gt; <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>0</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>  proc report</b></font></span> <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> = _nsumm box spacing = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> split = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;*&quot;</font></span>;<br />    column(<span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;SUMMARY OF NUMERIC VARIABLES (obs = %trim(&amp;cnt))&quot;</font></span><br />           <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> val_pct mis_pct dis xmin xp25 xmdn xp75 xmax xavg);<br />    define <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span>      / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;VARIABLE&quot;</font></span>         width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>20</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">order</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">order</font></span> = <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> center;<br />    define val_pct  / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;VALID*PERCENT&quot;</font></span>    width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">format</font></span> = percent9.<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>2</b></font></span>;<br />    define mis_pct  / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;MISSING*PERCENT&quot;</font></span>  width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">format</font></span> = percent9.<span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>2</b></font></span>;<br />    define dis      / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;DISTINCT*VALUE&quot;</font></span>   width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">format</font></span> = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>9</b></font></span>.;<br />    define xmin     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;MININUM&quot;</font></span>          width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />    define xp25     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;1ST*QUANTILE&quot;</font></span>     width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />    define xmdn     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;MEDIAN&quot;</font></span>           width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />    define xp75     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;3RD*QUANTILE&quot;</font></span>     width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />    define xmax     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;MAXIMUM&quot;</font></span>          width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;  <br />    define xavg     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;MEAN&quot;</font></span>             width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />  <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%if</font></span> <font color="#0000ff"><b>&amp;cha_cnt</b></font> &gt; <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>0</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%then</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">%do</font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#000080"><b>  proc report</b></font></span> <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> = _csumm box spacing = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>1</b></font></span> split = <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;*&quot;</font></span>;<br />    column(<span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;SUMMARY OF CHARACTER VARIABLES (obs = %trim(&amp;cnt))&quot;</font></span><br />           <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span> level tops);<br />    define <span style="background-color&#58;#ffffff"><font color="#0000ff">var</font></span>      / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;VARIABLE&quot;</font></span>         width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>20</b></font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">order</font></span> <span style="background-color&#58;#ffffff"><font color="#0000ff">order</font></span> = <span style="background-color&#58;#ffffff"><font color="#000080"><b>data</b></font></span> center;<br />    define level    / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;# of*LEVELS&quot;</font></span>      width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>10</b></font></span>;<br />    define tops     / <span style="background-color&#58;#ffffff"><font color="#a020f0">&quot;TOP 5*CATEGORIES&quot;</font></span> width = <span style="background-color&#58;#ffffff"><font color="#2e8b57"><b>100</b></font></span> center;<br />  <span style="background-color&#58;#ffffff"><font color="#000080"><b>run</b></font></span>;<br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%end</font></span>;<br /><br /><span style="background-color&#58;#ffffff"><font color="#0000ff">%mend</font></span> summ;<br /></font>




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2