plyrを使用してローリング平均を計算しようとしています。データは産業-国-年であり、産業-国ごとに繰り返し観測されています。データは不均衡ですが、ほとんどの産業国では約 15 の観察結果があります。
たとえば、データは次のようになります。
country ISIC Year Value
Algeria 1 1990 400
Algeria 1 1991 450
Algeria 1 1992 460
Algeria 2 1990 450
Algeria 2 1991 500
Algeria 2 1992 450
Argentina 1 1990 400
Argentina 1 1991 450
Argentina 1 1992 460
Argentina 2 1990 450
Argentina 2 1991 500
Argentina 2 1992 450
. . . .
. . . .
データを特定の業界と国にサブセット化すると、このようにローリング平均を計算できます
rollmean(subdata$Value, 3)
ただし、各産業国グループのローリング平均を計算するために、plyr で動作させることができませんでした。私はもう試した:
roll <- ddply(data, .(country, ISIC), summarize, rollmean(data$Value, 3))