我把时间序列数据用xts表示为
library(xts)
xtime <-timeBasedSeq('2015-01-01/2015-01-30 23')
df <- xts(rnorm(length(xtime),30,4),xtime)
现在我想计算不同日期之间的共同化,因此我希望以矩阵形式表示 df
:
为此,我用了
p_mat= split(df,f="days",drop=FALSE,k=1)
使用这个我得到一个天的列表,但我无法以矩阵形式排列这个列表 . 我也用过
p_mat<- df[.indexday(df) %in% c(1:30) & .indexhour(df) %in% c(1:24)]
有了这个我没有得到任何输出 . 我也尝试使用 rollapply()
,但无法正确安排 .
我可以帮助使用xts / zoo对象形成矩阵 .
2 回答
这是使用辅助函数执行此操作的一种方法,该函数将计算没有24个观察值的天数 .
也许你可以使用这样的东西:
输出: