Following my question here: *
I would like to change the NA values by 0 when year >= 1997 & <=2010.
Here is a subset of the dataset :
structure(list(gid = c(79600, 79600, 79600, 79600, 79600, 79600,
79600, 79600, 79600, 79600, 79600, 79600, 79600, 79600, 79600,
79600, 79600, 79600, 79600, 79600, 79600, 79600, 79600, 79600,
79600, 79600, 79600, 79600, 79600, 79600, 79601, 79601, 79601,
79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601,
79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601,
79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601, 79601
), Year = c(1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989,
1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 1981,
1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992,
1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
2004, 2005, 2006, 2007, 2008, 2009, 2010), TotalConflicts = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 2,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), IncidenceConflicts = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 1,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)), row.names = c(NA,
-60L), class = c("tbl_df", "tbl", "data.frame"))
Please note that the column IncidenceConflict is a binary column. Sometimes I got 1, 0 or NA.
I tried this but it does not work:
test<- test %>%
mutate(across(3:4, ~replace(.x, .x == "NA" & Year >= 1997, 0)))