首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >限制Proc表示输出仅完成行。

限制Proc表示输出仅完成行。
EN

Stack Overflow用户
提问于 2014-06-09 18:43:00
回答 1查看 188关注 0票数 1

我有一个简单的proc表示过程,我希望将输出限制为只完成行。

代码语言:javascript
复制
   data test_dat;
        input group $ subgroup $ time variable1 variable2;
    cards;
    A xxxx 1 100 2.50
    A xxxx 2 200 2.50
    A xxxx 3 300 2.50 
    A xxxx 4 100 3.00
    A zzzz 1 500 1.00
    A zzzz 2 450 1.00
    A zzzz 3 700 1.50
    A zzzz 4 600 1.50
    B yyyy 1 200 4.00
    B yyyy 2 100 5.00
    B yyyy 3 300 4.00
    B yyyy 4 250 5.00
    ;
    run;

    proc means data=test_dat mean sum;
        class group subgroup;
        var variable2 variable1;
        output out=stuffout(drop=_type_ _freq_ dropme ohheidropme2plz) mean=variable2_mean dropme sum=ohheidropme2plz variable1_sum;
    run;

默认情况下,proc意味着为我提供9行输出,而我只需要三行(7-9行)。我知道我可以执行另一个数据步骤来消除这些行,但我知道必须有一种更优雅的方法。(ps--它并不总是7-9行,所以这不能作为一个通用解决方案)。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-09 18:56:35

看起来你要找的是proc的意思是nway选项。见此处:http://support.sas.com/documentation/cdl/en/proc/61895/HTML/default/viewer.htm#a000146729.htm

代码语言:javascript
复制
proc means data=test_dat mean sum nway;
        class group subgroup;
        var variable2 variable1;
        output out=stuffout(drop=_type_ _freq_ dropme ohheidropme2plz) mean=variable2_mean dropme sum=ohheidropme2plz variable1_sum;
    run;

您还可以通过使用类型或ways语句来获得相同的结果。

这里您可以使用ways 2;,意思是显示类变量的所有可能的对的组合()。关键字nway只是指定ways = n,其中n是您拥有的类变量的数目。默认情况下,proc方法包括表示总计的所有可能行(例如,组变量的给定值的求和和平均值,而不考虑子组变量)。Ways 2指定您只对有两个类变量的行感兴趣,在本例中,这些行都是类变量。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24126759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档