SAS - 频数分布



频数分布表显示数据集内数据点的频率。表中的每个条目包含特定组或区间内值出现的频率或计数,以此方式,该表总结了样本中值的分布。

SAS 提供了一个名为 **PROC FREQ** 的过程来计算数据集内数据点的频数分布。

语法

在 SAS 中计算频数分布的基本语法如下:

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

以下是所用参数的描述:

  • **数据集** 是数据集的名称。

  • **变量_1** 是需要计算其频数分布的数据集的变量名称。

  • **变量_2** 是对频数分布结果进行分类的变量。

单变量频数分布

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

示例

在下面的示例中,我们找到名为 **CARS1** 的数据集(从 **SASHELP.CARS** 库创建)中 horsepower 变量的频数分布。我们可以看到结果分为两类。一类是针对每种汽车品牌。

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

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

带权重的频数分布

使用权重选项,我们可以计算受变量权重影响的频数分布。此处,变量的值作为观测数而不是值计数。

示例

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

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

执行上述代码后,我们将得到以下结果:

FREQ_tables3
广告