5

以下に示す2つの列AとBを持つデータフレームDFがあります。

A                    B                  
1                    0             
3                    0               
4                    0                   
2                    1                    
6                    0                    
4                    1                     
7                    1                 
8                    1                     
1                    0   

以下に示すように、スライディング ウィンドウ アプローチが実行されます。rollapply(DF$B, width=3,by=1) を使用して、1 ずつスライドするサイズ 3 のスライディング ウィンドウで列 B の平均が計算されます。各ウィンドウの平均値が左側に表示されます。

    A:         1    3    4    2    6    4    7    8    1                                          
    B:         0    0    0    1    0    1    1    1    0                                
              [0    0    0]                                              0
                    [0    0    1]                                        0.33
                          [0    1    0]                                  0.33
                                [1    0    1]                            0.66
                                      [0    1    1]                      0.66
                                            [1    1    1]                1
                                                 [1    1    0]           0.66
output:        0   0.33 0.33 0.66   0.66    1     1    1   0.66

ここで、列 A の各行/座標について、座標を含むすべてのウィンドウが考慮され、列「出力」に示されている結果を与える最高平均値を保持する必要があります。

上記のように出力を取得する必要があります。出力は次のようになります。

A                   B                  Output   
1                   0                      0
3                   0                      0.33
4                   0                      0.33
2                   1                      0.66
6                   0                      0.66
4                   1                      1
7                   1                      1
8                   1                      1
1                   0                    0.66

Rの助けはありますか?

4

2 に答える 2

0

R ライブラリ TTR には、スライディング ウィンドウの平均を計算するための多くの関数があります。

SMA = 単純移動平均

data$sma <- SMA(data$B, 3)

詳細なドキュメントはこちらhttp://cran.r-project.org/web/packages/TTR/TTR.pdf

于 2013-08-22T15:32:17.623 に答える