我想根据以下公式从每月值模拟每日值:V(d)=V(m)*(1+noise),噪声正态分布,均值为 0,标准差为 0.18)
我在名为 wind.m 的 12x1 矩阵中有每月值,在另一个名为 day 的 12x1 矩阵中有每个月的天数。我使用两个 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