我正在尝试使用 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))