2015-10-15 103 views
1

我有一個xts對象,我想聚合數據 - 同時保留日期。聚合xts對象時保留日期

wLn = apply(dLn, 2, to.weekly) 

> head(wLn) 
     AAPL   GSPC   VIX 
[1,] -0.05602066 -0.0252409007 0.01903172 
[2,] -0.03609222 -0.0111470571 0.13182832 

我試過使用索引來轉換日期,無濟於事。

+1

來自同'xts'包使用'apply.weekly'功能。 – 2015-10-15 04:48:27

+0

我已經嘗試過使用,to.period和其他變體。 weekly = apply.weekly(dLn,FUN = index,dLn,as.POSIXlt(format(time(dLn)),tz =「」))如果在整個對象上執行它,當然日期聚合很好。 – BorgmanC

+0

我不明白你的評論,對不起。 – 2015-10-15 05:05:54

回答

0

由於Pascal commented,您可以使用apply.weekly來彙總您的退貨(我使用下面的period.apply,因爲它是一個通用的解決方案)。您使用的彙總函數將取決於您的退貨計算方式。

require(xts) 
set.seed(21) 
x <- xts(matrix(rnorm(60, 0, 0.01), ncol=2), Sys.Date()-30:1) 
# weekly endpoints 
wep <- endpoints(x, "weeks") 
# log returns 
period.apply(x, wep, colSums) 
# arithmetic returns 
period.apply(x, wep, function(x) apply(1+x,2,prod)-1)