Ich frage mich, ob es eine Möglichkeit gibt, wie die rollmean
Funktion aus dem zoo
-Paket schleppende Variablen (oder möglicherweise eine andere kumulative Art Rolling Mean Funktion) zu behandeln. Sagen Sie, dass ich die folgenden data.frame habe:Füllen Sie trailing Variablen basierend auf Zeilenposition mit Rollmean
df <- as.data.frame(as.matrix(sample(1:10), ncol = 3))
df$roll <- rollmean(df$V1, 5, fill = NA, align = "right")
df
V1 roll
1 2 NA
2 7 NA
3 6 NA
4 1 NA
5 9 5.0
6 5 5.6
7 10 6.2
8 3 5.6
9 4 6.2
10 8 6.0
Ich weiß, dass ich so etwas wie fill = "extend"
mit rollmean
zu bekommen den Durchschnitt aller Hinter Variablen verwenden kann, aber ist es eine Möglichkeit, diese Vorgehensweise anzupassen erweitern, so dass jeder Die abschließende Variable ist kumulativ basierend auf der Zeilenposition? Also was ich will ist etwas wie die unten df, wo Zeile 4 df$roll
hat ein 4-reihiges Rollfenster, Zeile 3 hat ein 3-reihiges Rollfenster, und so weiter.
V1 roll
1 2 NA
2 7 4.5
3 6 5.0
4 1 4.0
5 9 5.0
6 5 5.6
7 10 6.2
8 3 5.6
9 4 6.2
10 8 6.0
Irgendwelche Ideen?
Sorry, sollte ich nicht verwendet haben 'Probe()' in der ursprünglichen Frage, aber das ist genau das, was ich gesucht habe! Vielen Dank. –
Auch für meinen eigentlichen Zweck war es mir möglich, die 'rolllapplyr (V2, 5, mean, partially = TRUE)) Zeile in die 'dplyr'-Kette zu werfen, in der ich arbeite, was perfekt funktionierte. –