2011-07-07 46 views
3

有沒有辦法在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) 

從這個模型我獲得擬合裝置和其用於制定出95%CI爲擬合樣條擬合的標準誤差。

我看過ggplot2中lm方法的例子,用一個術語來指定模型公式。 這種時間序列模型在時間序列自相關時可以實現嗎?

謝謝。

回答

6

如果您使用ggplot2中的簡單公式來增加任何適合的模型(如果殘差存在依賴關係),則CI將會有偏差。

如果我這樣做,我會適應任何模式,我想gpplot2。然後根據該模型預測在協變量範圍內均勻間隔的網格。計算這些預測的置信區間,並將這些與擬合值和數據組合到一個數據框中。從那裏你可以分別使用geom_line()geom_ribbon()來擬合模型和置信區間。這使您可以計算適當的置信區間來解釋殘差缺乏獨立性。

我預見的一個問題是,您有一個包含兩個協變量的模型,而ggplot()通常會考慮響應與單個協變量之間的關係。例如,如果你在ggplot密謀a1 VS id但該模型是a2 + bs(id)那麼你需要以某種方式佔a2第一,可以說爲預測值的範圍在id但保持a2固定在某個合理的值,說樣本的意思。

+0

這不應該是「說明殘差中缺乏*獨立性」嗎? – James

+0

@詹姆斯發現了。我認爲我有兩個意見可以說是「說明缺乏獨立性」,還是「說明依賴性」,並讓自己陷入混亂。現在更正。 –

+0

非常感謝。我最終計算了置信區間和上/下限控制,並將它們全部放入數據框中。感謝@Gavin關於'geom_ribbon()'的提示。 – John