我有一个庞大的数据集,包含 34 年中 500 只股票的每日收益。我首先运行 ddply 来创建年度中位数并返回列:
annual <- ddply(data, c("TICKER", "year"), summarize,
median_data = median(RETX),
return = prod(1 + RET))
目前的数据如下所示:
TICKER year median_data return
1 A 2000 -0.0081645 0.6717770
2 A 2001 -0.0036845 0.5207290
3 A 2002 -0.0069040 0.6299523
4 A 2003 0.0036585 1.6280659
5 A 2004 0.0000120 0.8242153
6 A 2005 0.0004025 1.3813425
现在我想创建一个新列,其中包含过去两年每个股票代码的平均中位数数据:
TICKER year median_data return avg_median
1 A 2000 -0.0081645 0.6717770 NA
2 A 2001 -0.0036845 0.5207290 -0.0036845
3 A 2002 -0.0069040 0.6299523 -0.0105885
4 A 2003 0.0036585 1.6280659 ...
5 A 2004 0.0000120 0.8242153
6 A 2005 0.0004025 1.3813425
对此的任何帮助将不胜感激!