我有一个数据集,该数据集由三列和2000+行组成,如下所示:
Dates Last.Price Daily.Return
1 09.08.00 31.6875 -0.017441860
2 17.10.00 59.1250 0.002118644
3 24.10.00 50.7536 0.067584338
4 05.12.00 92.1250 0.011667811
5 04.04.01 42.0000 0.141304348
6 17.04.01 61.5100 -0.008702659
现在,我想对“日期”列进行排序,并将每个日期的每日收益(第3列)汇总到一个新列中。另外,我想将汇总的每日收益除以观察次数。 因此,如果我对01.01.00有3个观察值,则可以说是0.1、0.2和0.3。新列中的结果应为0.1 + 0.2 + 0.3 = 0.6,然后除以3-> 0.2。
到目前为止,我尝试将它们排序如下:
df$Dates <- lubridate::dmy(df$Dates)
dfsort <- dplyr::arrange(df, Dates)
num <- aggregate(Daily.return~Dates,dfsort,length)
names(num)[2] <- 'num'
aggrreturn <- aggregate(Daily.return~Dates,dfsort,sum)
names(aggrreturn)[2] <- 'aggrreturn'
merge(num,aggrreturn)
不幸的是,这无法正常工作...
很高兴提供任何帮助!