Sas で乱数を生成する方法 (3 つの例)


SAS のrand()関数を使用して乱数を生成できます。

次の例は、この関数を実際に使用する方法を示しています。

例 1: 乱数を生成する

次のコードは、SAS で 1 から 10 までの単一のランダムな整数を生成する方法を示しています。

 /*create dataset with variable that contain random value*/
data my_data;
   call streaminit( 1 ); /*make this example reproducible*/
   x = rand (" integer ", 1 , 10 );
   output ;
run;

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

1 から 10 までの乱数は9であることがわかりました。

この例が再現可能であることを確認するために、 streaminit()関数を使用していることに注意してください。これは、このコードを実行するたびに、乱数が 9 になることを意味します。

コードを実行するたびに異なるランダム値を生成するには、 streaminit()関数を省略しても構いません。

例 2: 複数の乱数を含む変数を生成する

次のコードは、1 から 20 までの 10 個のランダムな値を含む変数を SAS で生成する方法を示しています。

 /*create dataset with variable that contain random value*/
data my_data;
   call streaminit( 10 );
   do i = 1 to 10 ;
   x = rand (" integer ", 1 , 20 );
   output ;
   end ;
run ;

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

変数 x の各値は 1 から 20 までのランダムな整数であることに注意してください。

例 3: 複数の乱数を使用して複数の変数を生成する

次のコードは、SAS でランダムな値を含む複数の変数を生成する方法を示しています。

 /*create dataset with variable that contain random value*/
data my_data;
   call streaminit( 10 );
   do i = 1 to 10 ;
   x = rand (" integer ", 1 , 20 );
   y = rand (" integer ", 50 , 100 );
   output ;
   end ;
run ;

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

変数xには 1 ~ 20 の範囲の 10 個のランダムな整数が含まれ、変数yには 50 ~ 100 の範囲の 10 個のランダムな整数が含まれます。

追加リソース

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

SAS でデータを正規化する方法
SAS で変数の名前を変更する方法
SAS で重複を削除する方法
SAS で欠損値をゼロに置き換える方法

コメントを追加する

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