私はRを使用しています。15の時点で25の変数があり、各時点の変数ごとに3つ以上の複製があります。私はこれをmeltに編集しましたdata.frame。これは、(とりわけ)ggplotのfacet_wrap()コマンドを使用して楽しくプロットできます。私の溶けたデータフレームはlis;と呼ばれます。これがその頭と尾ですので、データのアイデアを得ることができます:
> head(lis)
time variable value
1 10 SELL 8.170468
2 10 SELL 8.215892
3 10 SELL 8.214246
4 15 SELL 8.910654
5 15 SELL 7.928537
6 15 SELL 8.777784
> tail(lis)
time variable value
145 1 GAS5 10.92248
146 1 GAS5 11.37983
147 1 GAS5 10.95310
148 1 GAS5 11.60476
149 1 GAS5 11.69092
150 1 GAS5 11.70777
次のggplot2コマンドを使用して、近似スプラインと95%信頼区間とともに、すべての時系列の美しいプロットを取得できます。
p <- ggplot(lis, aes(x=time, y=value)) + facet_wrap(~variable)
p <- p + geom_point() + stat_smooth(method = "lm", formula = y ~ ns(x,3))
問題は、スムーズが私の好みに合わないことです-95%の信頼区間はかなり離れています。ガウス過程(GP)を使用して、時系列の共分散のより良い回帰と推定を取得したいと思います。
私は次のようなものを使用してGPを適合させることができます
library(tgp)
out <- bgp(X, Y, XX = seq(0, 200, length = 100))
これには時間がかかりX、観察Yし、の各ポイントで予測を行いますXX。オブジェクトoutには、から取得する95%の信頼区間の代わりに使用できる共分散行列など、これらの予測に関する多くのものが含まれていますns()。
問題は、この関数をラップして。とインターフェイスさせる方法ではないことですggplot2::stat_smooth()。進め方に関するアイデアやアドバイスをいただければ幸いです。