【问题标题】:SAS: Mean, median, max and percentiles by two variablesSAS:两个变量的平均值、中位数、最大值和百分位数
【发布时间】:2014-12-30 15:00:28
【问题描述】:

我有一个由 5 列构成的数据集。 月、用户、Num1、Num2、Num3。

我正在尝试为每个 Num1 Num2 和 Num3 计算 Month 和 User 的每个排列的平均值、中位数、最大值、第 25 和第 75 个百分位数。

我尝试过 proc 单变量,但如果不为每个月和用户排列创建宏和手动步骤,我就无法做到。

我的理想输出将如下所示,Num1 Num2 Num3 的单独输出:http://i.imgur.com/YC67LV1.png

谢谢!

【问题讨论】:

  • 请显示您尝试过的代码并提供示例输入数据,以及所需的输出应该是什么样子。

标签: sas proc


【解决方案1】:

PROC 意味着做你想做的事。

这是 SASHELP.SHOES 示例数据集的示例。

ods html;
proc means data=sashelp.shoes mean median max p25 p75;
   class region product;
   var sales inventory returns;
run;
ods html close;

【讨论】:

    【解决方案2】:

    您尝试过 PROC MEANS 吗?

    http://support.sas.com/documentation/cdl/en/proc/61895/HTML/default/viewer.htm#a000146729.htm

    或者您能否提供一个示例输入数据,以便我尝试重新创建结果?

    【讨论】:

      【解决方案3】:
      proc sort data = mydata;
       by month user;
      run;
      
      proc univariate data = mydata;
       by month user;
       var num1 num2 num3;
      run;
      

      您可能可以使用 ODS SELECT 或 OUTPUT 对其进行细化以仅获取您想要的准确统计信息

      【讨论】:

        猜你喜欢
        • 2015-04-09
        • 2017-03-23
        • 2021-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-08-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多