2つのループを使用して計算しようとしています。しかし、私はループ要素にあまり精通していません。
これが私のデータです:
data try;
 input rs t a b c;
 datalines;
 0    600    
 1    600       0.02514  667.53437  0.1638
 2    600       0.2766   724.60233  0.30162
 3    610       0.01592  792.34628  0.21354
 4    615.2869  0.03027  718.30377  0.22097
 5    636.0273  0.01967  705.45965  0.16847
 ;
run;
私が計算しようとしているのは、「T」値ごとに、a、b、およびcのすべての要素を方程式に使用する必要があるということです。次に、変数v1-v6を作成して、各T1-T6の方程式の結果を入力します。その後、vのすべての要素を合計するCSを作成します。
したがって、私の結果データセットは次のようになります。
rs    T           a          b          c        v1       v2        v3      v4  v5      v6    CS 
0    600                                                                                     sum of v1
1    600       0.02514   667.53437    0.1638                                                 sum of v2
2    600       0.2766    724.60233    0.30162                                                sum of v3
3    610       0.01592   792.34628    0.21354                                                sum of v4
4    615.2869  0.03027   718.30377    0.22097                                                sum of v5
5    636.0273  0.01967   705.45965    0.16847                                                sum of v6
これを行うために以下のコードを記述しましたが、エラーが発生しました。主に、変数のすべての要素をリンクするためにiとjを適切に使用する方法がわかりません。誰かが私が正しくないと思ったことを指摘できますか?myabeは、変数の要素を合計するためにsum関数を使用するべきではないことを認識していますが、どの関数を使用するかはわかりません。
data try3;
 set try;
 retain v1-v6;
 retain t a b c;
 array v(*) v1-v6;
 array var(*) t a b c;
 cs=0;
 do i=1 to 6;
  do j=1 to 6;
   v[i,j]=(2.89*(a[j]**2*(1-c[j]))/
    ((c[j]+exp(1.7*a[j]*(t[i]-b[j])))*
    ((1+exp(-1.7*a[j]*(t[i]-b[j])))**2));
   cs[i]=sum(of v[i,j]-v[i,j]);
  end;
 end;
run;
たとえば、ab cの値がないため、v1はv [1,1]=0のように計算されます。
v [1,2] =(2.89 * 0.02514 ** 2(1-0.1638))/((0.1638 + exp(1.7 * 0.02514 * 600-667.53437)))*((1 + exp(-1.7 * 0.02514 * (600-667.5347)))** 2))。
v [1,3]] =(2.89 * 0.2766 ** 2(1-0.30162))/((0.30162 + exp(1.7 * 0.2766 * 600-724.60233)))*((1 + exp(-1.7 * 0.2766 * (600-724.60233)))** 2))。
v [1,4]はabcの次の行の値を使用しますが、tはt[1]と同じになります。そして最後の行までこれを行います。そしてそれはv1になります。次に、v1 {1,1] + v1 [1,2] + v1 {1,3] .... v1 [1,6]のようなv1のすべての要素を合計して、cs[1,1]を作成する必要があります。 。