R: Рассчитать квартальный доход от ежемесячного дохода - PullRequest
1 голос
/ 14 марта 2011

У меня есть датафрейм (return.monthly) формы

Date         Return
2001-09-1    0.0404775
2001-10-1   -0.01771575
2001-11-1   -0.03304925
etc.

т.е. ежемесячные возвраты за период времени (2 года). Я хотел бы рассчитать квартальную доходность, то есть просто взять 3 наблюдения и вычислить сумму.

Я пытался

return.quarterly <- xts(return.monthly[, -1], return.monthly[,1])
function <- function(x) sum(x)
time <- 3
return.quarterly$return_q <- rollapply(return.quarterly$Return, FUN=function, 
width=time, align="left", na.pad=T)

Очевидно, что эта формула вычисляет доход по скользящему окну, т.е. она берет наблюдение 1-3 и вычисляет сумму, затем 2-4 и вычисляет сумму, и т. Д. Однако я хочу, чтобы 1-3, 4-6, 7 -9 ...

Как я мог это сделать?

Заранее спасибо, Дани

1 Ответ

4 голосов
/ 14 марта 2011

Вы можете использовать apply.quarterly из xts для вычисления среднего значения за квартал:

apply.quarterly(return.quarterly,mean) #Jan-Feb-Mar first quarter etc.

Кстати: разве вы не должны рассматривать вместо среднего значения сумму для квартальных доходов?

...