Я пытаюсь создать условный манекен (X) с правилом
, установите X = 1, если Y = 1 за последние два года до NA (считайте только один раз!).
Чтобы привести пример: это пример из моих данных:
year country Y
1990 Bahamas 1
1991 Bahamas NA
1992 Bahamas NA
1993 Bahamas 0
1994 Bahamas 1
1995 Bahamas 1
1996 Bahamas NA
1997 Bahamas 1
1998 Bahamas NA
1999 Bahamas 1
2000 Bahamas NA
2001 Bahamas 1
2002 Bahamas 1
2003 Bahamas 0
2004 Bahamas NA
2005 Bahamas 0
2006 Bahamas 0
2007 Bahamas 1
2008 Bahamas NA
2009 Bahamas 1
2010 Bahamas 1
2011 Bahamas 1
А вот как должен выглядеть манекен X:
year country Y X1
1990 Bahamas 1 1
1991 Bahamas NA 0
1992 Bahamas NA 0
1993 Bahamas 0 0
1994 Bahamas 1 1
1995 Bahamas 1 0
1996 Bahamas NA 0
1997 Bahamas 1 1
1998 Bahamas NA 0
1999 Bahamas 1 1
2000 Bahamas NA 0
2001 Bahamas 1 1
2002 Bahamas 1 0
2003 Bahamas 0 0
2004 Bahamas NA 0
2005 Bahamas 0 0
2006 Bahamas 0 0
2007 Bahamas 1 1
2008 Bahamas NA 0
2009 Bahamas 1 0
2010 Bahamas 1 0
2011 Bahamas 1 0
Этослишком сложно для меня.Я читал о dplyr, который, кажется, здесь уместен.Мои показания до сих пор приводили меня к этой кодировке
df %>% mutate(X=ifelse(Y >0) & lag(Y,2,))
Я получаю ошибку:
аргумент "да" отсутствует, без значения по умолчанию
Пожалуйста, скажите мне, что я здесь не так делаю.Должен ли я поставить "ifelse" перед "лагом"?
Спасибо.