Sas 简明教程

SAS - Standard Deviation

标准差 (SD) 是衡量数据集中数据差异程度的指标。从数学上讲,它衡量了每个值与数据集的平均值距离有多远或有多近。接近 0 的标准差值表示数据点趋于非常接近数据集的平均值,而较高的标准差表示数据点分布在较宽的值范围内

在 SAS 中,SD 值使用 PROC MEAN 和 PROC SURVEYMEANS 测量。

Using PROC MEANS

要使用 proc means 测量 SD,我们在 PROC 步骤中选择 STD 选项。它会显示数据集中存在的每个数值变量的 SD 值。

Syntax

在 SAS 中计算标准差的基本语法是:

PROC means DATA = dataset STD;

以下是所用参数的描述 -

  1. Dataset - 是数据集的名称。

Example

在下面的示例中,我们从 SASHELP 库中的 CARS 数据集创建数据集 CARS1。我们使用 PROC 均值步骤选择 STD 选项。

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

proc means data = CARS1 STD;
run;

当我们执行以上代码时,会给出以下输出:

SD 1

Using PROC SURVEYMEANS

此过程还用于测量 SD 以及一些高级功能,例如测量分类变量的 SD 以及提供方差估计。

Syntax

使用 PROC SURVEYMEANS 的语法是:

PROC SURVEYMEANS options statistic-keywords ;
BY variables ;
CLASS variables ;
VAR variables ;

以下是所用参数的描述 -

  1. BY - 表示用于创建观察组的变量。

  2. CLASS − 表示用于分类变量的变量。

  3. VAR − 表示将计算其标准差的变量。

Example

以下示例描述了 class 选项的使用情况,该选项会为分类变量中的每个值创建统计信息。

proc surveymeans data = CARS1 STD;
class type;
var type horsepower;
ods output statistics = rectangle;
run;
proc print data = rectangle;
run;

当我们执行以上代码时,会给出以下输出:

SD 2

Using BY option

以下代码给出 BY 选项的示例。其中结果将针对 BY 选项中的每一个值进行分组。

Example

proc surveymeans data = CARS1 STD;
var horsepower;
BY make;
ods output statistics = rectangle;
run;
proc print data = rectangle;
run;

当我们执行以上代码时,会给出以下输出:

Result for make = "Audi"

SD 3

Result for make = "BMW"

SD 4