Ich habe einen Paneldatensatz mit einer großen Anzahl von Gruppen. Ich habe angepasste Werte für jede Gruppe berechnet und möchte alle angepassten Werte in einem neuen Datensatz kombinieren. Ich suche nach einer möglichen Verknüpfung, um dies manuell zu vermeiden.extrahierte angepasste Werte für jede Gruppenvariable in den Paneldaten
Der folgende Datensatz ist ähnlich dem, an dem ich arbeite (viel kleinerer Maßstab in Bezug auf Gruppen).
set.seed(999)
dt <- data.frame("Group"=rep((LETTERS[1:10]), each=15),
"Year"=2001:2015,"value"=5+rnorm(150, 3,1))
names(dt)
head(dt)
table(dt$Year, dt$Group)
library(reshape2)
dt_tbl1 <- dcast(dt,Year~Group)
dt_tbl1
library(forecast)
tsMat <- ts(dcast(dt, Year ~ Group), start=2001, freq=1)
dt_ses <- lapply(tsMat, function(x) ses(x))
Ich suche nach etwas Hilfe, um den folgenden Schritt zu automatisieren. Fügen Sie alle verbleibenden Gruppen in den Datenrahmen ein.
dt_tbl2 <- data.frame("Year"=2001:2015,
data.frame(dt_ses$A$fitted),
data.frame(dt_ses$B$fitted),
data.frame(dt_ses$C$fitted))
und die Variablen in den neuen Daten umbenennen, um die ursprünglichen Gruppen beziehen gesetzt
names(dt_tbl2)[2:4] <- c("A_hat", "B_hat", "C_hat")
Sobald dies der dt_tbl2 abgeschlossen ist, sollte das gleiche Format wie die dt_tbl1 haben.
Ich habe versucht, sapply() und lapply() zu verwenden, aber nichts scheint zu funktionieren. Dank TCS