SAS程序结构

SAS编程首先需要 创建,读取数据集 到存储器,然后做该数据的分析

需要了解在其中一个程序被写入实现这一目标的流程。

SAS程序结构

按给定顺序写入以创建SAS程序的步骤

参见图 SAS_流程.md

  1. 定义 DATA
  2. 设置 PROC
  3. 输出

每个SAS程序必须具有所有这些步骤才能完成读取输入数据,分析数据和给出分析输出。

每个步骤结束时的RUN语句都需要完成该步骤的执行。

1 - DATA步骤

此步骤涉及将所需数据集加载到SAS存储器中并识别数据集的变量(也称为列) 还捕获记录(也称为观察或主体)

DATA语句的语法如下

```sas
DATA data_set_name;     #Name the data set. 定义 DATA
INPUT var1,var2,var3;       #Define the variables in this data set.     定义输入数据的类型(数字或字符串) 名称
NEW_VAR;                #Create new variables. 创建新的变量
LABEL;                  #Assign labels to variables. 创建附加标签定义
DATALINES;              #Enter the data. 输入的数据
RUN;
```

基本定义DATA 的流程 命名数据集,定义变量,创建新变量和输入数据

label 为附加标签定义

在定义 字符串变量在结尾有一个$,数字值没有它

```sas
DATA TEMP;
INPUT ID $ NAME $ SALARY DEPARTMENT $;
comm = SALARY*0.25;
LABEL ID = 'Employee ID' comm = 'COMMISION';
DATALINES;
1 Rick 623.3 IT
2 Dan 515.2 Operations
3 Michelle 611 IT
4 Ryan 729 HR
5 Gary 843.25 Finance
6 Nina 578 IT
7 Simon 632.8 Operations
8 Guru 722.5 Finance
;
RUN;
```

2 - PROC步骤

该步骤包括调用的SAS内置程序来分析数据

语法 sas PROC procedure_name options; #The name of the proc. 命名proc处理过程 RUN;

例 以下示例显示使用MEANS过程打印数据集中数值变量的平均值。

```sas
PROC MEANS;
RUN;
```

3 - 输出步骤

可以使用条件输出语句显示数据集中的数据。

语法

```sas
PROC PRINT DATA = data_set;
OPTIONS;
RUN;
```

例 下面的示例显示在输出中使用where子句从数据集中只产生少数记录。

```sas
PROC PRINT DATA=TEMP;
WHERE SALARY > 700;
RUN;
```

概括

完整的SAS程序 下面是每个上述步骤的完整代码。

DATA 
INPUT 
LABEL 
DATALINES;

;
RUN;
PROC MEANS;
RUN;
PROC PRINT DATA=

RUN;

程序输出结果