Sas で do until ステートメントを使用する方法


SAS でDO UNTILステートメントを使用すると、条件が満たされるまで繰り返しループできます。

次の例は、この命令を実際に使用する 2 つの異なる方法を示しています。

例 1: SAS の DO UNTIL ステートメント

次のコードは、SAS でDO UNTILステートメントを使用して、 var1var2という 2 つの変数を含むデータセットを作成する方法を示しています。これらの変数は、 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ステートメントは、 var1の値が 100 を超えるまで、 var1var2の新しい値を生成し続けました。

var1の値が 100 を超えると、 DO UNTILステートメントが停止し、新しい値がデータ セットに追加されなくなりました。

例 2: SAS の TO ステートメントを含む DO UNTIL ステートメント

次のコードは、SAS でDO UNTILステートメントとTOステートメントを使用して、 var1var2という 2 つの変数を含むデータセットを作成し、 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命令は、 var1の値が 10 より大きくなるまで、1 から 5 の範囲のvar2の値を生成しようとするよう SAS に指示しました。

var1の値が 10 を超えると、 DO UNTILステートメントが停止し、新しい値がデータ セットに追加されなくなりました。

追加リソース

次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。

SAS で IF-THEN-DO を使用する方法
SAS で IF-THEN-ELSE を使用する方法
SAS で DO WHILE ステートメントを使用する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です