Ich habe eine etwas laute Zeitreihe, die auf verschiedenen Ebenen schwebt.
Zum Beispiel die folgenden Daten:
Ich habe die durchgezogenen Liniendaten zur Verfügung und möchte eine Schätzung für die gestrichelte Linie erhalten. Es sollte stückweise konstant sein.
Welche Algorithmen sollten Sie hier ausprobieren?
Meine bisherigen Ideen drehen sich um 0-Grad-P-Splines (aber wie finde ich heraus, wo die Knoten platziert werden sollen?) Oder Strukturbruchmodelle. Ein Regressionsbaum ist die beste Idee, die ich derzeit habe, aber im Idealfall würde ich nach einer Methode suchen, die die Tatsache berücksichtigt, dass die beiden Ebenen bei y = 250 gleiche y-Werte haben. Wenn ich das richtig verstehe, würde ein Regressionsbaum diese beiden Intervalle in zwei verschiedene Gruppen mit jeweils unterschiedlichen Mittelwerten aufteilen.
Der R-Code, der es generiert hat, ist folgender:
set.seed(20181118)
true_fct = stepfun(c(100, 200, 250), c(200, 250, 300, 250))
x = 1:400
y = true_fct(x) + rt(length(x), df=1)
plot(x, y, type="l")
lines(x, true_fct(x), lty=2, lwd=3)