0

重複の可能性:
SAS proc SQL および配列

SQLを使用してSASで複数の列の比率を複数回計算しようとしています。たとえば、私は欲しい:

(((start*start_period)+(middle*middle_period)+(end*end_period))/number_days) AS azmonth;

問題はstart_period、 、middle_periodend_period、およびnumber_daysは定数でありstart、 、middle、およびendは、同じように乗算する必要がある約 7 つのセットの 1 つのセットです。それぞれに入力する以外に方法はありますか?

  1. Start_per Mid_per End_per Start1....Start20 Mid1...Mid20 End1...End20
  2. .3-------------.6----------.1------10-------15----- -26-------45-----61------08

Start、Mid、および Ends のそれぞれに対して個別の方程式を実行できることはわかっていますが、それらを個別にコピー/貼り付け編集する必要なく、それを実行できる方法があることを望んでいました。

4

1 に答える 1

0

PROC SQLを実行する前にマクロを記述して反復コードを生成し、procSQL内の適切なポイントでマクロを呼び出します。代わりにデータステップでこれを行う場合、代替オプションは、開始変数、中間変数、および終了変数に対して3つの配列を定義し、doループを使用して計算を20回繰り返すことです。

ここに見られるように。

この情報源は、PROCSQL自体にループ機能がないと主張しています。これが正しいかどうかはわかりません。もしそうなら、マクロが唯一の解決策かもしれません。

于 2012-07-08T19:15:00.777 に答える