SAS Column Output

作者: 不连续小姐 | 来源:发表于2019-02-28 05:51 被阅读4次

    SAS Day 26: Column Output

    Background:

    For table outputs, some times we want both the count and an overall percentage for each category rather than a simple number count.
    E.g. 75( 74): 75 count represents 74% of the total number in this group. In order to generate this output format, we need the variable count(c1,c2..) and group total (&n1, &n2..).

    [caption id="attachment_1726" align="alignnone" width="750"] image

    Pexels / Pixabay[/caption]

    **Example 1: Single Column **

    col1= count ||" ("|| put((count*100/&bign.),4.1) || ")";
    

    Output:

    image

    Example 2: Multiple Column

    Dataset:

    image

    Desired Output:

    image

    As we can see the col1 to col4 shows both the count and the percentage for each group.

    Solution Code:

    data final;
     set all;
    array col[4] $40 col1- col4;
    array p[4] (&n1 &n2 &n3 &n4);
    array c[4] n1 n2 n3 n4;
    do i=1 to 4
    col[i]= put (coalesce(c[i],0),4.)|| "(" || put (coalesce(c[i],0)/p[i]*100, 5.1) || ")"
    

    Sample dataset code:

    %let n1= 10;
    %let n2= 5;
    %let n3=6;
    %let n4=11;
    
    data test;
    input c1 c2 c3 c4;
    datalines;
    . 2 4 5
    3 . 4 6
    10 3 2 1
    0 1 2 9
    ;
    run;
    

    The code was originated from Denish,(i hope i spelled his name correctly :) )

    Happy Practicing!💃

    相关文章

      网友评论

        本文标题:SAS Column Output

        本文链接:https://www.haomeiwen.com/subject/xwscuqtx.html