0

x[1] から x[365] までの 365 個の値があります。各値について、windoe(x-17,x+17) を考慮する必要があるため、x[18] から開始します。私はこのような計算を実行したい:

   x=1:365
 first period = (x[18]-17 vaues,x[18]+17 values)

私の値の例(私のファイルには値である列が1つだけ存在します):

            values
     1      0.2
     2      0.3
     .      .
     365    0.4
4

2 に答える 2

1

私はあなたが探していると思います:

      library(zoo)
      rollapply(zoo(rnorm(x18)), 34, function(x)mean(x)/sd(x))
于 2013-02-12T19:11:28.220 に答える
1

rollmean関数zooパッケージを使用して、ローリング平均を取得できます。

# make some fake data
mydat <- 1:365
library(zoo)
mymeans <- rollmean(mydat, k = 35)

ローリング標準偏差を取得するには、適用する関数として使用rollapplyおよび提供できますsd

mysds <- rollapply(mydat, 35, FUN = sd)

そこから、出力を使用して目的の変換を行うことができます。

于 2013-02-12T18:30:29.250 に答える