Ich versuche Rolling-Mittel eines unsymmetrischen Datensatzes zu berechnen. Um zu zeigen, meinen Punkt Ich habe dieses Spielzeug Beispiel meiner Daten erzeugt:Erzeugen eines rollenden Durchschnitts aller vorherigen Beobachtungen pro ID in einem unsymmetrischen Paneldatensatz
ID year Var RollingAvg(Var)
1 2000 2 NA
1 2001 3 2
1 2002 4 2.5
1 2003 2 3
2 2001 2 NA
2 2002 5 2
2 2003 4 3.5
Die Säule RollingAvg(Var)
ist, was ich will, kann aber nicht bekommen. In Worten suche ich nach dem rollenden Durchschnitt aller früheren Beobachtungen von Var
für jeden ID
. Ich habe versucht, rollapply
und ddply
in der zoo
und die plyr
-Paket zu verwenden, aber ich kann nicht sehen, wie die Länge des Rollfensters alle vorherigen Beobachtungen für jede ID zu verwenden. Vielleicht sollte ich stattdessen das plm-Paket verwenden? Jede Hilfe wird geschätzt.
Ich habe andere Beiträge auf Rolling auf BALANCED-Panel-Daten gesehen, aber ich kann nicht ihre Antworten auf unausgewogene Daten extrapolieren.
Danke,
M
ich nicht Versteh warum ist die 5. Reihe von 'RollingAvg (Var)' 'NA'? –
Ich denke, es ist Computing für jede 'ID' – Metrics
Ist Ihre erwartete Ausgabe korrekt? – Metrics