📜  SAS频率分配

📅  最后修改于: 2021-01-08 14:32:34             🧑  作者: Mango

SAS频率分布

SAS频率分布是SAS编程中最常用的统计过程。

描述性统计量(例如均值和标准差)可用于连续变量来汇总数据,但是对于分类变量,描述性统计量不合适。

我们可以通过使用频率表来汇总分类变量,但是在继续之前,让我们首先了解分类变量。

分类变量:

纯粹的分类变量是允许我们分配类别,但又不允许它们按特定顺序排列的变量。换句话说,分类变量是具有两个或多个类别的变量,但是这些类别没有序列。

例如,性别是一个分类变量,它具有两个类别,即男性和女性,但两个类别都没有序列。另一个例子是头发的颜色,它也被认为是一个分类变量,因为它又具有多个类别,即黑色,棕色,深色,红色等。我们没有顺序可以对其进行排列。

频率表:

频率表显示针对每个变量类别观察到的病例数和百分比。

频率表中的每个条目都包含特定间隔内值出现的次数。

现在,让我们发现如何以SAS编程语言实现频率分配操作。

程序频率

我们可以使用PROC FREQ程序来计算变量观测值的频率分布。

句法:

PROC FREQ DATA = Dataset;
TABLES Variable1;
BY Variable2;

哪里,

  • 数据集:这是将用于频率分布的数据集的名称。
  • 变量1:这是需要计算其频率分布的变量的名称。
  • 变量2:声明为对频率分布结果进行分类的变量。

SAS PROC FREQ的使用

PROC FREQ的主要目的是我们可以计算任何用户定义的或已经可用的或SAS内置帮助库数据集的频率。为了计算频率分布,我们只需要指定数据集的名称即可。

Proc freq data=SASHelp.airline;
Run;

在SAS Studio中执行以下代码:

输出:

单变频分布

可以使用PROC FREQ过程确定单个变量的频率分布。实施PROC FREQ程序后,结果将显示每个包含的变量观测值的频率。它还将显示百分比分布,累积频率和累积百分比

例:

在此示例中,我们将为数据集CARS1计算变量“马力”的频率分布,该数据集是根据SAS帮助库的现有数据集CARS创建的。

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

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

在SAS Studio中执行以下代码:

输出:

多变频分布

可以使用PROC FREQ过程确定多个变量的频率分布。实施PROC FREQ程序后,结果将显示每个包含的所有变量观测值的频率。它还将显示所有变量的百分比分布,累积频率和累积百分比。让我们通过一个示例来了解此过程的实现。

例:

在此示例中,我们将计算两个变量的频率分布,第一个变量是make ,另一个变量是type 。这两个变量都属于数据集CARS1,该数据集是根据SAS帮助库的现有数据集CARS创建的。

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

在SAS Studio中执行以下代码:

输出:

权重频率分布

在频率分布中,权选项用于使用变量的权重来计算偏差的频率分布。

在下面的示例中,我们将使用以马力分配的权重来计算变量maketype的频率分布。让我们通过代码来理解:

proc FREQ data = SASHELP.cars;
tables make type; 
weight horsepower;
run;

当我们在SAS Studio中执行上述代码时,我们将获得以下输出: