У меня есть тиббл следующим образом:
year state win
2008 AL DEM
2008 MA DEM
2008 VT DEM
2012 AL DEM
2012 MA DEM
2012 VT DEM
2016 AL GOP
2016 MA GOP
2016 VT GOP
Я хочу создать переменную win_lag. Ожидаемый результат:
year state win win_lag
2004 AL GOP <NA>
2004 MA GOP <NA>
2004 VT GOP <NA>
2008 AL DEM GOP
2008 MA DEM GOP
2008 VT DEM GOP
2012 AL DEM DEM
2012 MA DEM DEM
2012 VT DEM DEM
Я пытался использовать:
df = df %>% group_by(state) %>%
mutate(win_lag= lag(df$win, n=1L, default=NA, order_by=year))
Результат таков:
year state win win_lag
2004 AL GOP <NA>
2004 MA GOP <NA>
2004 VT GOP GOP
2008 AL DEM GOP
2008 MA DEM GOP
2008 VT DEM GOP
2012 AL DEM GOP
2012 MA DEM GOP
2012 VT DEM GOP
В чем может быть проблема? Любое предложение о том, как еще действовать?