如何在 sas 中使用 proc tabulate(附示例)


您可以使用 SAS 中的proc tabulate以表格形式快速显示一个或多个变量的描述性统计数据

以下示例展示了如何将此过程与以下数据集一起使用,该数据集显示 12 名不同篮球运动员的总得分:

 /*create dataset*/
data my_data;
    input team $position $points;
    datalines ;
A Guard 15
A Guard 12
A Guard 29
A Forward 13
A Forward 9
A Forward 16
B Guard 25
B Guard 20
C Guard 34
C Forward 19
C Forward 3
C Forward 8
;
run ;

/*view dataset*/
proc print data =my_data;

示例 1:使用变量进行制表

我们可以使用以下代码来计算点变量的描述性统计量:

 /*create table that displays descriptive stats for points variable */
proc tabulate data =my_data;
    var points;
    table points * (N Min Q1 Median Mean Q3 Max);
run ; 

注意:括号中的值告诉 SAS 为点计算什么描述性统计量。

以下是一些最常用的描述性统计数据:

  • N :观察总数
  • 最小值:最小值
  • Q1 :第一个分位数(即第 25 个百分位数)的值
  • 中位数:中值
  • 平均值:平均值
  • Q3 :第三分位数(即第75个百分位数)的值
  • 最大值:最大值

从结果我们可以看出:

  • 观察总数为12
  • 最小分值是3
  • 第 25 个百分位数的点数为10.5
  • 中位数点数为15.5
  • 平均点数为16.92
  • 第 75 个百分位数的点数为22.5
  • 最大点数为34

从这五个值中,我们可以很好地了解 Weight 变量的值的分布。

示例 2:具有两个变量的过程制表

我们可以使用以下代码来计算点变量的描述性统计量,并按团队变量分组:

 /*create table that displays descriptive stats for points, grouped by team */
proc tabulate data =my_data;
    classteam ;
    var points;
    table team, points * (N Min Q1 Median Mean Q3 Max);
run ; 

结果表显示了三支球队各自的描述性得分统计数据。

例如:

  • A 队有6 个观察结果。
  • A 队的最低分值是9
  • A 队在第 25 个百分位数处的得分为12
  • A 队的中位数得分是14

等等。

示例 3:具有三个变量的过程制表

我们可以使用以下代码来计算点变量的描述性统计数据,按团队和位置变量分组:

 /*create table that shows descriptive stats for points, grouped by team and position */
proc tabulate data =my_data;
class team position;
    var points;
    table team, position *points* (N Min Q1 Median Mean Q3 Max);
run ; 

结果表显示了积分的描述性统计数据,按球队和位置分组。

请注意,“B”队和“攻击者”位置的单元格为空,因为 B 队中没有球员拥有攻击者位置。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何在SAS中使用过程摘要
如何在SAS中计算相关性
如何在SAS中创建频率表
如何在 SAS 中按组创建箱线图

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注