2

式に従って、月次値から日次値をシミュレートしたい: V(d)=V(m)*(1+ノイズ)、ノイズは平均 0 と標準偏差 0.18 で正規分布しています)

私は、wind.m と呼ばれる 12x1 マトリックスに毎月の値を持ち、day と呼ばれる別の 12x1 マトリックスに各月の日数を持っています。2 つの for ループを使用します。

for (i in (1:12)) {
  for (j in (1:12)){
    A<-wind.m[i,]*(1+rnorm(day[j,],0,0.18))
  }
  print(A)
}

このコードの結果は、12 セットの 31 の毎日の値をシミュレートしますが、これは間違っています (2 月は 28 日、4 月、6 月は 30 日など)。コードを修正する方法がわかりません。

使用したデータは次のとおりです。

> wind.m
      [,1]
 [1,] 2.78
 [2,] 2.93
 [3,] 3.09
 [4,] 3.11
 [5,] 3.44
 [6,] 3.44
 [7,] 3.71
 [8,] 3.86
 [9,] 4.05
[10,] 4.08
[11,] 4.22
[12,] 4.30
> day
      [,1]
 [1,]   31
 [2,]   28
 [3,]   31
 [4,]   30
 [5,]   31
 [6,]   30
 [7,]   31
 [8,]   31
 [9,]   30
[10,]   31
[11,]   30
[12,]   31
4

2 に答える 2