如何在 sas 中使用 do until 语句


您可以在 SAS 中使用DO UNTIL语句一遍又一遍地循环,直到满足条件。

以下示例展示了在实践中使用此指令的两种不同方法。

示例 1:SAS 中的 DO UNTIL 语句

以下代码展示了如何在 SAS 中使用DO UNTIL语句创建一个数据集,其中包含两个名为var1var2 的变量,这两个变量不断生成新值,直到var1的值大于 100:

 /*create dataset using DO UNTIL statement*/
data my_data;

var1 = 1;
var2 = 1;

do until (var1 > 100);
    var1 = var1 + var2; 
    var2 = var1 * var2;
    var1 + 1;
    
output ;

end ;

run ;

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

DO UNTIL语句不断为var1var2生成新值,直到var1的值大于 100。

一旦var1的值超过100, DO UNTIL语句就会停止,新值也停止添加到数据集中。

示例 2:SAS 中的 DO UNTIL 语句和 TO 语句

以下代码展示了如何在 SAS 中使用DO UNTIL语句和TO语句来创建一个数据集,其中包含两个名为var1var2的变量,这两个变量不断生成新值,直到var1的值大于 10:

 /*create dataset using DO UNTIL statement with TO statement*/
data my_data;

var1 = 0; 

do var2 = 1 to 5 until (var1 > 10);   
    var1 = var2**2;
    
output ;

end ;

run ;

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

TO指令指示 SAS 尝试为var2生成 1 到 5 范围内的值,但仅限var1的值大于 10。

一旦var1的值超过10, DO UNTIL语句就会停止,新值也停止添加到数据集中。

其他资源

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

如何在 SAS 中使用 IF-THEN-DO
如何在 SAS 中使用 IF-THEN-ELSE
如何在 SAS 中使用 DO WHILE 语句

添加评论

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