如何在 sas 中使用 if or 逻辑


您可以使用以下基本语法在 SAS 中使用IF OR逻辑:

 data new_data;
set my_data;
if team="Cavs" or points>20 then cavs_or_20 = 1;
else cavs_or_20 = 0;
run ;

此特定示例创建一个新数据集,其中包含名为cavs_or_20的列,该列采用以下值:

  • 如果球队列中的值等于“Cavs”或者如果积分列中的值大于 20,则为1
  • 如果两个条件都不满足,则为0

以下示例展示了如何在实践中使用此语法。

示例:如何在 SAS 中使用 IF OR 逻辑

假设我们在 SAS 中有以下数据集,其中包含有关各种篮球运动员的信息:

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
Cavs 12
Cavs 24
Warriors 15
Cavs 26
Warriors 14
Celtics 36
Celtics 19
;
run ;

/*view dataset*/
proc print data =my_data; 

假设我们要创建一个新数据集,其中的列采用以下值:

  • 如果球队列中的值等于“Cavs”或者如果积分列中的值大于 20,则为1
  • 如果两个条件都不满足,则为0

我们可以使用以下语法来做到这一点:

 /*create new dataset*/
data new_data;
    set my_data;
    if team="Cavs" or points>20 then cavs_or_20 = 1;
    else cavs_or_20 = 0;
run ;

/*view new dataset*/
proc print data = new_data;

名为cavs_or_20的新列使用IF OR逻辑来确定数据集中的每一行是否应具有01值。

例如:

  • 第一行中的团队名称是“Cavs”,因此cavs_or_20列的值为1
  • 第二行中的团队名称是“Cavs”,因此cavs_or_20列的值为1
  • 第一行中的球队名称不是“Cavs”,并且分值不大于 20,因此cavs_or_20列的值为0

等等。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何在SAS中重命名变量
如何在 SAS 中创建新变量
如何在SAS中替换字符串中的字符

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注