使用ggplot2平滑自动关联的时间序列数据

Joh*_*ohn 3 r time-series ggplot2

有没有办法在ggplot2中为自动关联的时间序列合并平滑函数?

我有自动关联的时间序列数据,我目前使用手动过程来确定拟合样条曲线的95%CI.

用法和日期在数据框AB中.我使用的模型的主要组件如下:

    d<-AB$Date
    a<-AB$Usage

    o<-order(d)
    d<-d[o]
    a<-a[o]

    id<-ts(1:length(d))
    a1<-ts(a)

    a2<-lag(a1-1)
    tg<-ts.union(a1,id,a2)
    mg<-lm(a1~a2+bs(id,df=df1), data=tg)
Run Code Online (Sandbox Code Playgroud)

从该模型中,我获得了拟合装置和拟合的标准误差,用于计算拟合花键的95%CI.

我在ggplot2中看到了lm方法的示例,其中有一个术语来指定模型公式.当时间序列自动关联时,这种时间序列模型是否可以实现?

谢谢.

Rei*_*son 6

如果您使用ggplot2中的简单公式来添加任何模型拟合(如果残差中存在依赖性),则CI将会有偏差.

如果我这样做,我会适应,我想无论模型之外gpplot2.然后从该模型预测在协变量范围内的网格均匀间隔点.计算这些预测的置信区间,并将这些以及拟合值和数据组合到单个数据框中.从那里你可以分别使用geom_line()geom_ribbon()适用于拟合模型和置信区间.这允许您计算适当的置信区间,以确定残差中缺乏独立性.

我预见的一个问题是你有一个包含两个协变量的模型,而ggplot()通常会考虑一个响应和一个协变量之间的关系.例如,如果你在ggplot 中绘制a1vs id,但是模型适用于a2 + bs(id)那时你需要首先a2以某种方式计算,比如预测一系列值,id但保持a2固定在某个合理的值,比如样本均值.