SAS - 频率分布

频率分布是显示数据集中数据点的频率的表格。 表中的每个条目都包含特定组或区间内值出现的频率或计数,通过这种方式,表总结了样本中值的分布。

SAS 提供了一个称为PROC FREQ 的过程来计算数据集中数据点的频率分布。

语法

SAS 中计算频率分布的基本语法是 −

PROC FREQ DATA = Dataset ;
TABLES Variable_1 ;
BY Variable_2 ;

以下是使用的参数说明 −

  • Dataset 是数据集的名称。

  • Variables_1 是需要计算其频率分布的数据集的变量名。

  • Variables_2 是对频率分布结果进行分类的变量。


单变频分配

我们可以使用PROC FREQ 来确定单个变量的频率分布。在这种情况下,结果将显示变量每个值的频率。结果还显示了百分比分布、累积频率和累积百分比。

示例

在下面的示例中,我们找到了名为 CARS1 的数据集的变量马力的频率分布,该数据集是从库 SASHELP.CARS 中创建的。 我们可以看到结果分为两类结果。 每个品牌的汽车一个。

PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
   FROM 
   SASHELP.CARS
   WHERE make in ('Audi','BMW')
;
RUN;

proc FREQ data = CARS1 ;
tables horsepower; 
by make;
run;

当上面的代码执行时,我们得到如下结果 −

FREQ_By2

多变频分布

我们可以找到多个变量的频率分布,将它们分组为所有可能的组合。

示例

在下面的示例中,我们计算按车型分组的汽车品牌的频率分布以及每种类型的汽车按每个品牌分组的频率分布。

proc FREQ data = CARS1 ;
tables make type; 
run;

当上面的代码执行时,我们得到如下结果 −

FREQ_tables1

具有权重的频率分布

使用权重选项,我们可以计算与变量权重有关的频率分布。这里变量的值被视为观察次数而不是值的计数。

示例

在下面的示例中,我们计算变量 make 和 type 的频率分布,并将权重分配给马力。

proc FREQ data = CARS1 ;
tables make type; 
weight horsepower;
run;

当上面的代码执行时,我们得到如下结果 −

FREQ_tables3