我已使用lubridate
将某些持续时间数据转换为hms格式
library(lubridate)
series$Duration <- hms(series$Duration)
这为我提供了每日列数据作为xts对象:
>Duration
2016-03-12 9M 5s
2016-03-13 6M 18s
2016-03-14 6M 30s
2016-03-15 7M 12S
我想要从数据创建移动平均线,所以使用:
Duration <- rollmean(Duration,30,align="right")
这确实给出了时间序列,但不是以公认的格式:
2016-03-12 32.10000
2016-03-13 32.26667
2016-03-14 31.53333
2016-03-15 31.16667
我不确定数据是否正确并且已经以某种方式转换为索引。它似乎不等于秒。
我的问题是我可以创建此类hms数据的移动平均值并保持原始hms格式化
****编辑注:道歉,我现在无法提供示例数据。与我的原始帖子相比,似乎在创建xts对象时,xts将值强制为.numeric(),因此在将数据框架更改为xts时存在问题。但是,尝试在ggplot中绘制数据帧数据图表也要求使用as.numeric()强制数据。
代替我提供的数据,如果有人可以提供有关如何将移动平均线应用于hms数据的帮助,并允许它在没有版本的情况下绘制图表,我会感激不尽?非常感谢
答案 0 :(得分:0)
似乎最好的路线是首先通过period_to_seconds()进行转换,这样可以在几秒钟内准确地绘制图表