本文概述
- if-then语句
- If-Then-Else-If语句
- IF-THEN-DELETE声明
该决定取决于条件, 即, 如果条件为真, 则程序将使用另一组条件或另一条语句, 但是, 如果条件为假, 则它将返回代码的开始语句。
考虑下图:
文章图片
SAS中有三种类型的决策声明:
- If -Then语句
- If-Then-Else-If语句
- If-Then-Delete语句
例:
在下面的代码中, 我们提供了两个条件。第一个条件是, 如果学生的成绩超过50, 则将该学生添加到” 通过” 组中。
第二个条件是, 如果学生的成绩小于50, 则将该学生添加到” 失败” 组中。
Data student;
input result;
if result>
50 then group = "Pass";
if result<
50 then group = "Fail";
datalines;
80
34
56
51
72
37
45
49
67
90
;
run;
proc print data=http://www.srcmini.com/student;
run;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
根据以上输出, 当条件” 结果> 50″ 为真或结果大于50时, 它已添加到” 通过” 组。当条件” result < 50″ 为true或结果小于50时, 它已添加到” Fail” 组中。
If-Then-Else-If语句 如果指定的条件为true, 则If-Then-Else-If语句指示SAS执行一条语句;如果条件为false, 则指示SAS执行语句的else部分。
在其他部分, 我们可以使用If给出另一个条件。因此, 我们可以使用If-Then-Else-If语句给出多个条件, 让我们通过一个例子来理解它。
例:
在下面的代码中, 我们提供了两个条件。如果第一个条件为true, 则将在if部分中执行, 但如果条件为false, 则将在if部分中执行else。
Data student;
input result;
if result>
50 then group = "Pass";
else if (result<
50) then group = "Fail";
datalines;
80
34
56
51
72
37
45
;
run;
proc print data=http://www.srcmini.com/student;
run;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
根据上面的输出, 已将大于50的结果按第一个条件添加到” 通过” 组, 而小于50的结果已将按第二个条件添加到” 失败” 组。
IF-THEN-DELETE声明 IF-THEN-DELETE语句如果指定的条件为true, 则指示SAS执行一条语句;如果条件为false, 则在条件为false后删除所有观察值。让我们通过一个例子来理解它。
例:
【SAS条件语句用法详细图解】在下面的代码中, 我们提供了一个条件。如果条件为true, 则执行part, 如果为false, 则条件为false后将删除所有观测值。
Data student;
input result;
if result<
50 then delete;
datalines;
80
34
56
51
72
37
45
98
;
run;
proc print data=http://www.srcmini.com/student;
run;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
根据以上输出, SAS仅显示大于50的结果。所有小于50的结果均已删除。
推荐阅读
- SAS中的交叉制表详细图解
- SAS频率分布用法图解
- SAS数据集的用法详细图解
- 什么是SAS算术平均值(详细图解)
- SAS数组用法详细图解
- SAS-SQL详细操作图解
- SAS数据集的子设置详细图解
- SAS用法图解(无需下载和安装)
- Appium自动化测试之键盘操作pressKeyCode()方法(Android特有)